ENG-6260 initial changeset. Remove executor/plannode Table* caching for ...

...safer truncates, refactor plannodes to reduce/normalize boilerplate.
You said you prefer shared_ptr or smart_ptr, but I forgot which one or both. Any reason why this change?