factor out GraphElement from Node and Edge.  implement click and drag selection.  implement graph iterator.
implement getNode() in graph