pawns now move correctly. check checking works correctly for all pieces