Adding core layer and object base class for models