adds FlowBuilder - fluent interface for FlowDefs.

cleans up the interface so that users only have to know about the
builder on the helper and less about FlowDefs and their interaction with
the CascadingHelper.
adds documentation
chains prev Pump through PipeAdapterPump

we need to preserve the getEmittedClasses result from the previous pipe
through the PipeAdapterPump, so that simple things like retain don't
drop off the known classes
adds happy path test

between this and the (eventually converter TestPump) there should be
enough coverage and the classes are simple enough that it's well
covered.

also moves TestPump to a more junit 4 style