Represents a graph object's ID.
Although these are currently strings, it's helpful to have their
own sub-class for type checking and for possible future enhancements.
Regardless of the implementation, each new ID must be unique.
Represents an ident that is not attached to any object; e.g., if a graph has no owner ident.
Create a new unique-to-the-universe id.
public GraphObjectID(String s)
Create an id from the given string. Note that this allows there to be
more than one of any given id, thus violating the basic constraint.
This assumes that the given string will have come from a properly-created GOID.