updating source code of most everything

Added comments, refactored several classes, moved methods from
ChessBoard to Game since they weren't really part of a ChessBoard.