Underped my generics
Need removeEdge and equals, and documentation, and testing, but looking good
More incomplete work