A lot of refactoring. Added class for Tile and Board. Tile allows manipulation of information of each individual square of the board; while Board manages valid movements, status of the game, and so on