Movement profiles and validation

Piece moves validated against the Piece's PieceMovementProfile