Refacto done and all tests green.