code: def register(self, name, obj, namespace=None):
          
          if "." in name:
              namespace, name = name.rsplit(".", 1)
          caret = self.raw
          if namespace:
              for term in namespace.split('.'):
                  if term not in caret:
                      caret[term] = Bunch()
                  caret = caret[term]
          caret[name] = obj
docs: Register :attr:`obj` as :attr:`name` in :attr:`namespace`
  
          Parameters
          ----------
          name : string
              A name of the object entry
          obj : instance
              A python object which will be registered
          namespace : string, optional
              A period separated namespace. E.g. `foo.bar.hogehoge`
  
          Examples
          --------
          >>> registry = Registry()
          >>> registry.register('hello', 'goodbye')
          >>> registry.raw.hello == 'goodbye'
          True
          >>> registry.register('foo', 'bar', 'hoge.hoge.hoge')
          >>> isinstance(registry.raw.hoge, Bunch)
          True
          >>> isinstance(registry.raw.hoge.hoge, Bunch)
          True
          >>> isinstance(registry.raw.hoge.hoge.hoge, Bunch)
          True
          >>> registry.raw.hoge.hoge.hoge.foo == 'bar'
          True
          >>> registry.register('hoge.hoge.foobar', 'foobar')
          >>> registry.raw.hoge.hoge.hoge.foo == 'bar'
          True
          >>> registry.raw.hoge.hoge.foobar == 'foobar'
          True