Stdafx: More header cleaning.

Cleans up stdafx
Makes the code more readable
Avoids cyclic dependencies in the headers
Avoids recompiling headers multiple times
Makes compile times faster on gcc and clang (and msvc when built with /MP)
Removes wx dependencies where c++11 has an equivalent (for timer, thread)
Removed functions/headers that weren't being used at all.

Ready to merge