ENH: Complete clean up of this module
A data model was previously very light weight: two dictionaries with entities as values. One dictionary defined entities that are part of the model, the other one referenced entities that are required but not in the model itself.
Quite a bit code developed around this light weight structure. However, I deemed the use of the data model not straight forward and quite unclear what exactly it offers.
Now the sole purpose should be the that a data model can be defined and updated. See the current docstring for more details.