Code is now actually extracting enums.

Lots of testing and finding new cases still yet to be done.