complete restructuring, new class Game holding former global vars