{EventEmitter} = require('events'){EventEmitter} = require('events')Type = require('type-of-is')class Mediator extends EventEmittercreate delegate methods on Mediator to other objects
map : map of method name and target object pairs used for delegation
delegate : (map)->
for method,target of map
do (method, target)=>
@[method] = ()->
target[method].apply(target, arguments)
mediator = new Mediator()
mediator.setMaxListeners(50)
module.exports = mediator