idea of separate classes for each model