factor out common estimator code, handle override/explicit, save things in jobconf
move reducerEstimator creation into ExecutionContext via Config, update with things from Twitter internal version, pass Config to LocalCluster.initialize