INSERT INTO ... SELECT multi-partition and ad hoc support

For insert-into-select testing, generate lots of single- and multi-partition stored procedures with different combinations of partitioned/replicated tables, with and without parameters.  Generate ad hoc statements too.

Implement replicated/replicated support for insert-into-select.

Make PlanAssembler handle insert subqueries with same mechanism used for select subqueries.

Create InsertSubPlanAssembler to help infer partitioning info for INSERT INTO SELECT statements.
I tried your test cases, where we are assigning a constant to the partitioning column in the target table via a subquery.  I think they should be plannable, but they are not.  I think I can make this work with a minor change to how InsertSubPlanAssembler calls StatementPartitioning, so I'm going to try and fix it.