Introduced GameType and GameTypeManager.
Refactored some code.
Example Light and Shadow game type.