Update make and undo to use the new Move
Add a one-bit bitboard constructor
Clean up move validity