refactored field expression class names
added joins
refactored aggregations