docs: function(name, factory, object) {
  
                          var that = this;
                          var objects = {};
                          var defaultFactory = this.getDefaultFactory().getName();
  
                          if (_.isObject(name)) {
                              objects = name;
                          } else {
                              if (_.isUndefined(object)) {
                                  object = factory;
                                  factory = undefined;
                              }
  
                              if (_.isUndefined(factory)) {
                                  factory = defaultFactory;
                              }
  
                              objects[factory] = {};
                              objects[factory][name] = object;
                          }
  
                          _.each(objects, function(factoryObjects, factory) {
                              if (!that.hasFactory(factory)) {
                                  if (!(defaultFactory in objects)) {
                                      objects[defaultFactory] = {};
                                  }
  
                                  objects[defaultFactory][factory] = factoryObjects;
                                  delete objects[factory];
                              }
                          });
  
                          return objects;
                      }