raise URLError when CachedWeb gets non-200 code

This is to stop bad responses from being put into the python cache.