removes Piece require from Result
adds PieceType module
sorts out Colour, Piece and PieceType - uses hardcoded FEN/SAN strings to simplify
updates and cleans up Fen to work with new Piece module.  null instead of Piece.none.