[4.9.2] Why does FindSessionsCallbackProxy.h try to compile when I build my project in C++?

All I wanted to do was add a custom BlueprintCallable UFUNCTION() to my project’s GameInstance so I could pass in a Blueprint Session Result and read some of the variables not available in the Editor.

Making the function seems simple enough, but getting VS Community 2013 to work properly with FBlueprintSessionResult and by extension FindSessionsCallbackProxy.h is driving me up the wall.

VS appears to recognize FBlueprintSessionResult without adding FindSessionsCallbackProxy.h to any includes list, as it is colored properly and does not cause any intellisense errors.
But if I try to compile?

error C2079: 'Z_Param_Out_ResultTemp' uses undefined struct 'FBlueprintSessionResult'

Ok. So Ill just add the include file.

#include "Runtime/Online/OnlineSubsystemUtils/Classes/FindSessionsCallbackProxy.h"

No biggie right?

FindSessionsCallbackProxy.h(19): error C2504: 'UOnlineBlueprintCallProxyBase' : base class undefined

Why is it trying to compile FindSessionsCallbackProxy.h?!?
This isn’t the first Engine Source .h Ive included, why is is failing now?
Why is it compiling the Engine source instead of just my project?