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.
You're right, and it would be easier to read.  I'll fix it.