clean up the controller code, add a gamestate model and implement the
random question generator