Refactored weather classes

(1) Refactored weather classes