Fixed|GCC|All Games: Build and link errors

Corrected the definitions of various thinkers to be compatible with g++.
In short, one cannot define member functions into anonymous typedef'd
structs.

Also enabled the full C++ libdeng2 API for libheretic due to need for
de::function_cast<> in p_oldsvg.cpp.