title: Replacing original EventEmitter with custom one
body: <p>Consider I want to use <code>EventEmitter2</code>, or some implementation of <code>EventEmitter</code> of my own. However, if I just do <code>EventEmitter = MyEventEmitter</code>, it only helps for explicit inheritance that happens after this declaration, but obviously won't change existing objects inheriting from builtin <code>EventEmitter</code>, and is limited to scope of module.</p>
  
  <p>Can I take advantage of alternative <code>EventEmitter</code>s when using builtin objects? I can think of just descending prototype chain of any particular object, and if prototype appears to be instance of <code>EventEmitter</code>, replace it with my own, but isn't there more elegant way?</p>