Subtle fixes to the toRepr algorithm to improve its handling of the
root value being printed: if that object is present via a reference
elsewhere in the graph, it'll report the answer as a dereference of
that reference, instead of as constructing a new object. This helps
preserve internal aliasing that would otherwise be lost.