Refactor All Enums to a separate file

Initially we refactored just Aggregation but that left the code
inconsistent.  Enums should be importable without a ton of dependencies,
so it makes good sense to segregate them to their own module.

Change-Id: I3b78352c9ff9325cb678a7969f3fdcaf90386072