Update datatypes to check for circular pointer references. Change circular pointer references so that they return a string instead of pointer object for the secondary reference