scalding-core: merge flow step strategies to allow reducer estimation combined with other strategies

Reducer estimation works fine by itself, but if your job defines a custom flow step strategy that does something else, the reducer estimator strategy gets overwritten.  This PR does not modify any public APIs but simply runs strategies in sequence if one is present from the ExecutionContext.
Also, this is clearly a Monoid. Why not just make a Monoid[FlowStepStrategy[A]] and use that?