- Moved GUI new component macro to gui layout. TODO: use a templated function to avoid casting and make it more intuitive.
- Started game state architecture.
- Fixed segfault accessing null active state in gstate.cpp.
- Use a templated version of GUI_NEW_COMPONENT, for more safety, less usage of macros, and check with Boost if the compiler supports varadic macros and variadic templates. Static cast instead of dynamic.
- Show the three ways to create GUI components.