finished pawn potentialMoves and updated models to keep their functions out of global scope