Model classes and DAO layer refactoring.