Update

This version is glitchy as hell.  No checks allowed, and it generates a
ton of testcode.  There are steps you can take to make it work again:
in the Board class, the "is mated" function must be made to return
false; just comment out all the content.
Finished Checkmate

Few bugs in the castle queenside algorithm, flip board
Otherwise complete functionality
Basically finished functionality

There are a few bugs…see if you can find them