First stab at enum extraction.
Tweak generated enum output.
Enum work, collections, and DO fix.