Fix for #527

This is a fix for #527.

Existing root records in `@irecords` are now reused, instead of replacing them with new object instances. 

This allows already-instantiated record clones to keep receiving future updates, since their prototype will still point to the same object in `@irecords`.