code: function (collection, options, callback) {
          collection = _.cloneDeep(collection);
  
          var auth,
              event,
              variable,
              newCollection = {},
              units = ['info', 'item'],
              builders = new Builders(options),
              authOptions = { excludeNoauth: true },
              varOpts = { fallback: options && options.env };
  
          try {
              units.forEach(function (unit) {
                  newCollection[unit] = builders[unit](collection);
              });
  
              (auth = builders.auth(collection, authOptions)) && (newCollection.auth = auth);
              (event = builders.event(collection)) && (newCollection.event = event);
              (variable = builders.variable(collection, varOpts)) && (newCollection.variable = variable);
          }
          catch (e) {
              if (callback) {
                  return callback(e, null);
              }
              throw e;
          }
  
          if (callback) { return callback(null, newCollection); }
  
          return newCollection;
      }
docs: Converts a V1 collection to a V2 collection (performs ID replacement, etc as necessary).
  
  @param {Object} collection - The v1 collection to convert to v2.
  @param {Object} options - The set of options for v1 -> v2 conversion.
  @param {Function} callback - The function to be invoked when the conversion has completed.