You can clone with
HTTPS or Subversion.
When graphs have vertices, they'll need to implement #dup using deep copy, otherwise changing one graph's vertices will change any duplicates.
example test case:
graph = Graph.new
graphdup = graph.dup
graphdup.has_vertex? "MyVertex" # => true
Note: Might need to add a dup for vertices, or any vertex container
Add 'dup' and 'method_missing' to container class. Part of #6
Make graph dup do a deep copy. Closes #6