Reorganize Model & Provider classes to separate class aspects