Inline agg

This is part 1: Serial Inline aggregation contain table agg and group by agg with index.

Waiting for Jenkins.

I admit that this extra parameter has always bothered me a little. I struggled with how to hide it, but then I gave up. It also bothered me that the determinism change is a usually more of a slow-down than an optimization, so the name does not fit.
So, my opinion is that if we're going to fix it, then let's fix it right:
    Replace SeqScansToUniqueTreeScans.java with a simple standalone class called ScanDeterminizer in the top-level planner package that has no inheritence and has one public static method called directly from PlanSelector (call it "apply" or "applyRecursively") .
  There is probably never going to be another similar hack that needs to know the DeterminismMode, so we don't need a Runner framework for it. And you can pull the last traces of DeterminismMode out of the MicroOptimization base class.  In my opinion, at about 100 lines of working code, the method is just slightly too big just to add it as a PlanSelector method, but one standalone class in the same package is enough to do the job without getting needlessly tangled in with unrelated code.