Third commit, Cleaned up the low level classes of the enums and moved them to the Abstraction to reduce code re-write