Performance optimization of the diffing algorithm by using shared objects for property comparisons, and added support for providing the key (property name) in the property info objects (this can be used to determine the type of comparison that is made, among other possible applications for this).