simplified the handling of aggregate source types
Adding more tests for complex aggregations
Refactor ExpressionNode to allow as_vendor extensions
Fix regression with check_aggregate_support