Correlate update and implementation for enumerable convention

This facelifts Correlate relation and adds implementation for enumerables (i.e. nested loops, nested loops outer, nested loops semi, nested loops anti).
In current PR correlation/de-correlation should be intact (as much as it is possible). Special handling in planner/sql parser will be updated later.

A new planner config variable is added: forceDecorrelate=true(default)/false. By default planner still tries to de-correlate a lot, however for testing purposes de-correlation can be disabled. The setting might be removed if de-correlation is converted to cost-based-rule.
line too long