Prototype of FlowGraph

Early prototype for discussing the way forward.
Before we start with the DSL sugar I would like that we express the functionality in terms of something similar to the raw addEdge methods.
The idea so far has been to use the flow `HasNoSource` and `HasNoSink` (here `f1`) as the handle that can be passed to another build step to attach source/sink.

In a similar way I think the merge/bcast vertices should be possible to pass on.