A* Pathfinding (E01: algorithm explanation)