code: function (cache, listeners, callback) {
      // push to listener cache
      if (listeners.indexOf(callback) < 0) {
          listeners.push(callback);
      }
      // check loading state
      if (Object.keys(cache).length <= 0) {
          callback();
      }
  }
docs: add event