CS 180 Pathfinding