Remove EnumDataStore and used a global EnumDataRegistry instead.

Avoids passing of Context everywhere in Table and DataStores
and specially in DataExtractors and DataPopulators.
Since this class needs to store all enums, there will be different classes in there for different enum and hence the use of ?. 

However, if you try and pass the wrong class in, it'll just give you a null back since it wouldn't have found a map for that class. So you you should never see a class cast exception and the warning is just that, a warning. Asserting the class will make no difference whatsoever.