Removed history from enPassant & castlingRights

Now that we have stateless moves the history wasn't used. It was for
removal anyway. This simplifies the code a bit.
Move module refactor

The move module has been split into smaller sub-modules for
readability. Also removed the export of the ordered queue of move
generator. We just return lists.