Adding diagnostic tool functionality, refactoring version checker