add EdgeWeightedDigraph.fromEdgeListString static method
ShortestPath.py: keep G object, and some cleanings