change error handling in aggregator use exceptions directly (so it'll work) and remove some error cruft