Game mechanics

Merging the latest work focused on implementing the game mechanics