Fix a typo in the comments.
Only clone the $old_object when it's needed.

This requires moving the code that adds the old object to the cache queue before updating any values on the object, so that is has the old values.