move view switching work to AbstractGameController