implement and genericize pawn capture moves