code: function done(error) {
      if (error) {
        errors.push(error);
      }
      if (--initializing <= 0) {
        if (errors && errors.length) {
          var errorResult = new Error('Errors occurred during initialization.');
          errorResult.initializationErrors = errors;
          callback(errorResult);
        } else {
          processPostInitializeQueue(postInitializeQueue, callback);
        }
      }
    }
docs: decrement initializing until all asynchronously initilizations have completed