Refactoring Piece and Board

Refactored Piece and Board out of the design. The dynamic of Pieces
ultimately is terrible and did not play nice with subclassing;
therefore, I just got rid of the unneccessary subclassing.

Moreover, I completed ChessBoard while I was at it.