Node.js EventEmitter implementation with some extra feature (bindable scopes, subevents, no double listener registration)