The keyed approach will reduce the complexity of `on` to be linear in the number of listeners "for that event", rather than linear in the total number of listeners. Both linear, but no need keep a single list of all listeners if it's never used.