Fix EventEmitter to match that expected by Intercom

This fixes the EventEmitter to work the way Intercom needs, with additions for stuff we need.