src/bus.js
function listen(name, callBack) {
  function f() {
    try {
      callBack.apply(this, arguments);
    } catch (e) {
      console.error(e); // eslint-disable-line no-console
    }
  }
  callbacks[callBack] = f;
  messageBus.bind(name, f);
}
function listen(name, callBack) {
  function f() {
    try {
      callBack.apply(this, arguments);
    } catch (e) {
      console.error(e); // eslint-disable-line no-console
    }
  }
  callbacks[callBack] = f;
  messageBus.bind(name, f);
}
Registers a listener of the specified message. Whenever the specified
message is sent, the specified callBack function will be invoked passing
the parameters specified in the send invocation

@param {string}
name - The name of the message.
@param {function}
callBack - A function receiving (a) an "event" object and (b)
the sequence of parameters specified in the call to send.
@return {undefined}