Changes to get decorrelation working.  Includes test case

- Update planner to decorrelation.
- Fixes to decorrelation logic.
- Update push filter past join to also support a copy hook and use JoinRelBase instead of JoinRel.
- Add filter push down on decorrelation.
- Fix RelStructuredTypeFlattener to correctly populate toRelContext.

fixes #225