code: def init(obj, resource_root, attrs=None):
      
      # This works around http://bugs.python.org/issue2646
      # We use unicode strings as keys in kwargs.
      str_attrs = { }
      if attrs:
        for k, v in attrs.iteritems():
          if k not in ('self', 'resource_root'):
            str_attrs[k] = v
      BaseApiObject.__init__(obj, resource_root, **str_attrs)
docs: Wraper around the real constructor to avoid issues with the 'self'
      argument. Call like this, from a subclass's constructor:
  
       - BaseApiObject.init(self, locals())