the overall canonicalization state + interface to the underlying RDF environment
whether the input should be copied to a local store (e.g., if the input is a generator, or the uniqueness of quads are not guaranteed). If this
parameter is not used (i.e., value is undefined) the copy is always done unless the input is an rdf.DatasetCore instance.
Implementation of the main steps on the top level of the algorithm specification.