No need to extract EventEmitter interface.
Mostly cometic changes to agree with wiki tutorial.