Tidy up
Use object instead of array (mistake)
Tidy up (incorrect merge conflict resolution?)
Add `eventEmitter.off`