Added dynamic GameState types, step 1
Dynamic GameStates round 2

Refactored a few things and moved stuff around.
Compiles and starts into the splash screen.
Close button works again (whoops).

Introduced a System.h which shall contain some global typedefs and #defines.
Only thing in it is a typedef for null.
Feeling so Java now :P