> i see where you are coming from, but wouldn't this more accurately be called
> something like Object#refer since all instance vars will then be shared?

  class Object
      def replace(other)
        other.instance_variables.each do |name|
          o = other.instance_variable_get(name)
          if o.respond_to? :clone
            instance_variable_set(name, o.clone)
          end
        end
      end
    end 

T.