Add game abstraction #26
Add game states - closes #26