function _detachCustomEvent(sEventName, fHandler, sNamespace){
        sNamespace = sNamespace ? (sNamespace+".") : "";

        if(!fHandler){
            htHandlers[sNamespace + sEventName] = [];
            return;
        }

        var aHandlers = htHandlers[sNamespace + sEventName];
        var nIndex = aHandlers ? aHandlers.indexOf(fHandler) : -1;

        if(nIndex > -1){
            htHandlers[sNamespace + sEventName].splice(nIndex, 1);
        }
    }
Detach custom event handler
clears all handler of sEventName when fHandler is empty

@param {String} sEventName
@param {Function} fHandler
@param {String} sNamespace