Important:
Because I could not find weather of any city from soap web service, I think if you find one it returns error.
Testing:
Although I have hands-on experience on Jasmine (to test AngularJs code) I have not used it (time limit)
Unit test is done only for a few classes which I think the rest of classes can be done in the same way
Design is done to make code more testable (please as an example have a look at GlobalWeatherServiceClient)
Coding:
Although I have experience on Css compilers like LESS for the sake of the time I have not implemented it.
Still more improvement on design is doable, however, to avoid adding unnecessary complexity to a test project I skipped it