Add in a check that only allows a certain subset of moves.
Merge remote-tracking branch 'origin/grid-system' into legal-moves