Part 4 - Refactoring before implementing routes