Implement retries and add unescaping.

Sometimes, the tag passed from X11R5 is a little *too* limiting,
and nothing comes back in the search. In those instances, the data
attribute is [], so we just ask for a new random gif without the
limiting tag.

Also, sometimes the things from X11R5 come back with HTML entities
in them. They are now decoded before being sent anywhere else in
the program. Yes, this means that the code is now open to XSS, but
if X11R5 seriously decides to do that, well, awesome.