Eng 6553 group by alias

Waiting for Jenkins...
The nature of this fix is mostly to allow syntax that would previously have been tagged as an error.
There is only one case that I would expect this code to have to generate a new error message.
BTW, a new error message is theoretically possible but painful and usually avoided in favor of finding an existing message that is "close enough".
That would be if a column name in a GROUP BY ambiguously referenced a name that was valid both for a column in the underlying scan and a different column in the select clause, something like:

        SELECT decode(a, null, "null", a) AS a, MAX(b), MAX(c) FROM abc GROUP BY a;

My personal opinion is that the standard (non-alias) interpretation should take precedence over the alias in such edge cases, so there's no new error case to describe. This is the behavior we get "on the cheap" by giving the old hsql resolution method its chance and only widening the search when that fails.
As strange as this case may sound, I believe that we have recently seen something similar in a query migrated from the mysql-like impala engine.

Since the use of aliases in GROUP BY is not a standard feature but is a mysql-compatible extension,
I actually think that we should do some experimenting with mysql and try to emulate the mysql behavior in these edge cases.