So I found the answer myself. If you come across this, AbleToSpawn
needs to be know in both .h and .tpp. To do this just do a circular inclusion (i.e. include the .tpp in the .h, and he .h in the .tpp) and just let the include guards do their work.