@Override
	public GDirectedGraph<V, E> emptyCopy() {
		return delegate.emptyCopy();
	}
A class that can wrap a {@link GDirectedGraph} and allows for vertex and edge additions 
without changing the underlying graph.

<P><B>Warning: </B>As mentioned above, this graph is meant for additive operations.  In its
current form, removal operations will not work.  To facilitate removals, this class will 
have to be updated to track removed vertices and edges, using them to correctly report
the state of the graph for methods like {@link #containsVertex(Object)} and 
 {@link #containsEdge(GEdge)}.

<P>Implementation Note: there is some 'magic' in this class to add 'dummy' vertices to the
graph.  To facilitate this, the mutated graph in this class does not have the <code>V</code>
type, but rather is typed on Object.   This means that this class can only be used 
generically, with templated types (like by algorithms and such).  Any usage of this class
that expects concrete implementations to be returned can trigger ClassCastExceptions.

@param <V> the vertex type
@param <E> the edge type
Ghidra/Framework/Graph/src/main/java/ghidra/graph/MutableGDirectedGraphWrapper.java