refactoring with 4 failing tests
fully refactered and got all GREEN passes