Checks edge and corner cases for valid moves, skeleton set up for normal case