feat(graph): Add draft of shortest path algorithms

Introduce tested function ShortestPath based on simple DFS and a not
very efficient untested Dijkstra algorithm version.