Should have a proper test suite to detect regression errors, support TDD, and help with refactoring.