Made error printing more visible

I found myself not having seen error conditions, usually when the cookie
is not good anymore, i.e. due to IP changes. Now the error output is
more distinct and at least for me, works better.

An idea might be to have colourful output if a capable terminal was
detected.
Support for different User-Agents

That required implementing a _urlopen method, because an opener doesn't
work as expected. If you installed an opener that would add the
User-Agent header, it would not be set! I guess it's a bug in urllib2.

It needs a bit more polish, i.e. now the User-Agent is very static and
subclasses cannot overwrite that nicely. Also a list of common user
agents and where to get them would be nice.

I wrote that support because I thought three would not like the
default Python one. But even with the change it didn't seem to work. But
a day later it works again, with the change. And probably without. So
this is more unnecessary complexity for now, but I think it's still
useful to not be overly bald.
Big whitespace cleanup

It was really annoying to have tabs and spaces mixed. I just used
"expand -t 4" to convert all tabs to spaces. That's what PEP8 wants, cf.
http://www.python.org/dev/peps/pep-0008/#tabs-or-spaces
Merge commit '6e55a467a622ca9db25da783be70538134188f67'