Combination of all my issue ideas.

Separated out vector and list.  Use vector for 'as' and list for function calls.  Default behavior for select, join, where, group, order-by, having, etc. is to append rather than replace.  Merge if you like :)