WIP - extract Moves module

Running the tests throws toplevel constant errors, but it seems to be
working otherwise.
Rename classes to get rid of warnings

aka "the easy way out"
Merge branch 'moves_and_pieces_modules'