Pawns now cannot move into check. Also some refactoring of pawn movement checking.