Refactoring: good decoupling of concepts and good cohesion
within each object