refactored the model base class into a better namespace