Partial `move` implementation
Added note about move's impl
Fix "EnPassanti" typo
Add EP handling for move
Extracted a `prettyMove` for doctests
Added `unsafeMove` for convenient testing
Added spec for halfmove counter
Removed obsolete TODO
Added en-passant test
Added halfmove logic
Added castling test
Handle CastlingState
Added en-passant test
Made `Move` a record type thing
Ported everything to use `Move` object
Handled castling moves