add methods for Pawn movement and refactor Piece and Board modules to be more Position-centric
fix pawn movement generation and add position transitions