Forecast (caching): simplify by not caching if there was no user specifi...

...ed location.

@yegg 

Side note: tests are being a pain :)