(function () { var _registered = {}; function _disconnect(sig) { signals[sig] = null; delete _registered[sig]; } Object.defineProperties(signals, { "emit" : { value : function(sig, args) { var sigs = _registered[sig]; var ret = false; var i = 0; do { if (sigs[i].connected) { ret = sigs[i].callback.apply(this, args) || ret; i++; } else { sigs.splice(i, 1); } } while (i