Ruby challenges using TDD and clean code