Implemented Path across other classes
Correct order of edges returned by shortest path and directions fix

- Shortest path was returning edges in reverse order. It now reverses the reversed edges, and thus corrects the order.
- The last direction was not included in directions.