Added tests for circular objects, some still fail, needs more
development but dont have time atm