mkEdge()
Implement an edge equality check under such a scheme:
bool eqE(Edge a, Edge b) { ... }
Returns True if a == (v,w) && b == (v,w) OR a == (v,w) && b == (w,v)
Also ...
How would mkEdge() and eqE() change if
eqE()