Board#dup, Piece#valid_moves, and more with bug fixes.  Doesn't make moves into check.