Fix move_pawn and castle_check
Add new tests