Tile merge check

Added method to Board for checking if two tiles can merge. Added
corresponding unit tests.
Row and column move checks

Added methods to Board for checking if a row or a column can move.
Added corresponding unit tests. Changed Board.isValid() - it no longer
needs two for loops now that the tile array is 1D.