Decouple Pubsub implementation
Various pubsub-related implementations are convoluted, lacking a clear separation of concern. This makes complexity high and maintenance difficult.
Code should be made less complex.
Reduce the amount of responsibilities per class, using less dependencies, making the code more stand-alone.
What is implied by "Decouple" ?