Retools the gamestates and the way input handlers are defined.
Added macros for creating input handlers and gamestates