refactoring models to separate files