Fix matching of wires ending in a partially-matched node-vertex

The new maps behave slightly differently to the old ones: adding an
already-mapped pair fails, even when it would not change the map.  We
now allow for this in MatchState.add_edge_to_match.
!-graph wire-homeomorphism checker
No arrowheads on undirected edges in dot output
Fix merging on isolated wire-vertices
Fix rewriter and re-enable tests that now pass

Rewriter was previously trying to pass non-normalised graphs into
match_normalised.
Remove unnecessary print statement
Fix up and re-enable hilb.ML and distancematrix.ML
Use the new homeomorphism checker where appropriate

Replacing the old isomorphism checker