added splash screen, event system, gamestate logic