code: function addProtectedCallback(eventName, callback) {
      oboeBus(eventName).on(protectedCallback(callback), callback);
      return oboeApi; // chaining
    }
docs: Add a callback, wrapped in a try/catch so as to not break the
  execution of Oboe if an exception is thrown (fail events are
  fired instead)
  
  The callback is used as the listener id so that it can later be
  removed using .un(callback)