Base class for overlays - overlay graphs, subgraphs, projections, etc
returns edge in this graph with same src and same edge_id
API to access link in network
Interface bound to destination node of edge
For consistency, edge.set(key, value) is neater than setattr(edge, key, value)
Interface bound to source node of edge
API to interact with an overlay graph in ANM
Add edges. Unlike NetworkX, can only add an edge if both src and dst in graph already. If they are not, then they will not be added (silently ignored)
Bidirectional will add edge in both directions. Useful if going from an undirected graph to a directed, eg G_in to G_bgp