Unit tests and refactoring