[feature request] Return edges iterator with all_shortest_paths

Like shortest_path() and all_paths(), would be very useful for all_shortest_paths() to return a list of edges traversed instead of just vertices.

It would also be nice if all_paths() and all_shortest_paths(), similarly to shortest_path(), give the option of returning both the vertices and edge lists in a single call.