EventEmitter, event driven javascript,  with namespacing support and internal events built in.