Add Board#dup
Add Piece#valid_move_seq? and Piece#perform_moves