Improve board state and add Board.Print()
Clean up Move & Position

* If a player can go again will be determined by if they had any moves to choose, not based on which move they chose
* Remove incorrect documentation about the Home row and assotiated defines
* Add Move.String() and Position.String()