introducing Game class, but a lot of rewrites to do