Shortest path algorithm, it's missing debug and some functions in edge class