An implementation of GraphGenerator used to generate directed graphs. Graphs are generated as
follows:
- Objects added to the generator are 2 element object arrays.
- The elements of the array represent the objects modelled by the nodes.
- The object array itself is the object modelled by the edges.
- As each object array is added to the generator:
- A node lookup table is queried using the elements of the object array.
- If a node lookup returns null, a new node is created for its respective object.
- A new edge is created incident to the two looked up nodes.
- The underlying object of the edge is set to the be object array.