Refactored and extracted weather into separate class