docs: def __save_reference(self, o, cls, args, kwargs):
          """
          Saves a reference to the original object Facade is passed. This will either
          be the object itself or a LazyBones instance for lazy-loading later
  
          :param mixed o: The original object
          :param class cls: The class definition for the original object
          :param tuple args: The positional arguments to the original object
          :param dict kwargs: The keyword arguments to the original object
  
          """
          if not o and cls:
              self['__original_object'] = LazyBones( cls, args, kwargs )
          else:
              while hasattr( o, '__class__' ) and o.__class__ == Wrapper:
                  o = o.wrapper__unwrap()
              self['__original_object'] = o