Use stack-based state machine for game states