One listener, many emitters using a global namespace.
One emitter, many listeners in different files using a global namespace.
Separate interface creator, many emitters, many listeners in different files using a global namespace.