docs: def update(self, obj=None, **kwargs): # known special case of dict.update
          """
          dict.update is special cased and does not end up calling __setitem___
          overriding to ensure it gets called.
          Below is the dict.update description:
          D.update([E, ]**F) -> None.  Update D from dict/iterable E and F.
          If E present and has a .keys() method, does:     for k in E: D[k] = E[k]
          If E present and lacks .keys() method, does:     for (k, v) in E: D[k] = v
          In either case, this is followed by: for k in F: D[k] = F[k]
          code based on DictMixIn
          """
          if obj is None:
              pass
          elif hasattr(obj, 'iteritems'):  # iteritems saves memory and lookups
              for k, v in obj.iteritems():
                  self[k] = v
          elif hasattr(obj, 'keys'):
              for k in obj.keys():
                  self[k] = obj[k]
          else:
              for k, v in obj:
                  self[k] = v
          if kwargs:
              self.update(kwargs)