Pipelines
Rework the pub/sub interfaces to allow for the concept of pipelines.
The first example is to create pipelines that compress and then send, ex zlib://|tcp://... and subscriptions that do the reverse tcp://...|zlib://
Rework the subscription plugin interface.
- the higher level pub_sub::Subscriber holds all the subscription objects, not the plugins
- allow for the idea of a source (something that spontaneously creates messages) or a filter (something that receives messages, process them, and send them on).
Edited by Jonathan Hanks