Refactoring + TDD setup