Updated basic functors to be aggregates by adding make_ functions and removing constructors