Merge branch 'compatibility'
Add utils
Add State_manager
Add Base_state
Add Splash_state
Add main.cpp