Refactoring exercises chapter 1