Changing printing to use the decorator design pattern.
Refactoring