IPublisher is more independent of subscriber implementation. Now, the
subscriber is a generic parameter of class IPublisher. It means that all
IPublisher implementations will work for any type of subscriber.