moved Player and Result into Game class
- Game is no longer a Struct, since constant nesting doesn't work in Struct.new
Game::Player is now an abstract type, added Checkers::Player as descendant
updated spec