code: function (obj, event, fn) {
  		var listeningTo = this._listeningTo;
  		if (!listeningTo) {
  			return;
  		}
  		var remove = !event && !fn;
  		if (!fn && typeof event === 'object') {
  			fn = this;
  		}
  		if (obj) {
  			(listeningTo = {})[obj._listenId] = obj;
  		}
  		for (var id in listeningTo) {
  			obj = listeningTo[id];
  			obj.off(event, fn, this);
  			if (remove) {
  				delete this._listeningTo[id];
  			}
  		}
  	}
docs: Stop observing another object
  @param {Events=} obj Object to stop observing. Omit to stop observing all
  objects.
  @param {string=} event Event name. Omit to stop observing all events on
  this object.
  @param {Function} fn Callback function. Stops this function executing
  when `event` is triggered.