Inheriting From FRunnable

I am attempting to write a class that extends FRunnable that will communicate with bluetooth devices. However when I compile I get an error:

CompilerResultsLog: Info Error: Couldn’t find parent type for ‘BluetoothConnector’ named ‘FRunnable’ in current module or any other module parsed so far.
CompilerResultsLog:Error: Error C:/dev/projects/ue4/MyProject/Source/MyProject/BluetoothConnector.h(17) : Class ‘FRunnable’ not found.

There is nothing yet added to the cpp file but here is the header file. Everything is commented out so I know its not creating the issue. This is in the Core directory so I shouldn’t need to add anything to the Build.cs file. I’m at a loss for what I am missing.

#pragma once

#include "Object.h"
#include "bluetoothapis.h"
#include "AllowWindowsPlatformTypes.h"
#include "HideWindowsPlatformTypes.h"
#include <WinSock2.h>
#include <ws2bth.h>
#include "BluetoothConnector.generated.h"

/**
 * 
 */
UCLASS()
class MYPROJECT_API UBluetoothConnector : public FRunnable
{
	GENERATED_BODY()
	
        //Contstructor    
    //public:
        //BluetoothConnector();
        //virtual ~BluetoothConnector();

        //Private attributes
    //private:
        //SOCKET bluetoothSocket;
        //SOCKET connected;
        //FThreadSafeCounter stopTaskCounter;
        //static BluetoothConnector* connector;
        //FRunnableThread* thread;


    //public:
        //virtual bool Init();
        //virtual uint32 Run();
        //virtual void Stop();

        //Public methods
    //public:
        //void EnsureCompletion();
        //static void joyInit();
        //static void shutdownThread();
};

I have much the same problem.
I tried including the header for FRunnable, as listed at the bottom of this page FRunnable

But it was a no-go.

I can use FRunnable Parent classes, so long as I do not use any UE Macros (No UClass(), No GENERATED_BODY(), etc).

However the dillema I’m currently in, is that I would like to use a delegate to trigger a function in my main thread when my threaded c++ function is finished. Sadly, I cannot use the easy Delegate Macros that UE provides without having a UCLass.

UCLASS needs UObject-based parent class