package structure, and separation of logic, services and dao