fleshing out the game engine