Refactor insert/materialize node schemas.

I'm having a small problem with the complexity here. 
Is there some more abstract packaging that can work to init the tuple given the node?
Even if it's just "m_node->initTemplateTuple(m_engine, templateTuple);" .
IIRC, we don't usually directly expose catalog objects to the executors.

This would only involve a forward declaration of TableTuple in InsertPlanNode so it can delegate to its delegate.
And the pass-through API is likely to only get SLIGHTLY more complicated if we decide to go with the "non-listed column subset" optimization. getTargetTableDelegate() could be backed out / privatized.
Worth it?