refactoring is ADDICTIVE, because tests!