From: spox on
The pipeliner library provides framework for message passing between objects.
It allows objects to hook into the pipeline to receive certain types of
objects, and process them in any way they see fit.

An overview and more information in the README:

http://github.com/spox/pipeliner

Changes in 1.1 version:

* Modified Pipeline#hook to allow conditional matching