Ignore another facebook infinite loop
Make !status show who started a job.
Ignore dokuwiki loop
Ignore another default gravatar
Ignore some bad joined URLs

These don't point to real ad trackers, they are joined URL nonsense
Ignore some bxSlider loops
Ignore &hidepatrolled=
Eliminate stop_control atexit hook.  #91.

The pipeline.on_cleanup event was added to seesaw in commit
658e53ecbaebd7f21f303ac203b048cb0b6cabcd, and was intended to support
cases where we need to perform deinitialization work in a pipeline.
Therefore, the atexit hook is probably not necessary.
Teach the bot to recognize !ao < FILE.  #14.

This commit also teaches the bot to differentiate between !ao URL and
!ao < URL.  (Cinch triggers *all* matching command handlers, not just
the first or last one registered.)
Teach pipeline how to handle a file containing URLs.  #14.
Stream URL file from source; write file as we receive it.  #14.

This shifts responsibility to wpull for parsing the URL file; all we do
is fetch it.

Potential issue: I'm not sure if Response.iter_content bypasses
transfer-encoding handling.  If it does, then we'll have to use a code
path that doesn't.  (Another possibility: just shell out to curl...)
Teach the bot how to queue !ao < jobs.  #14.
Generate a different slug for !ao < jobs.  #14.

(This is a good illustration of how the Job class has probably reached
its limits.)
Make job queuing + queued_at an atomic action.

This hasn't (as far as I know) caused any issues, but I think of job
queuing + setting queued_at as a single action, so might as well make it
that way in code.
Ignore infinite loops on khaleejtimes.com
Ignore more khaleejtimes.com loops
Ignore another facebook infinite loop

https://www.facebook.com/connect.php/js/FB.SharePro/rsrc.php/v2/yo/r/rsrc.php/v2/yY/r/rsrc.php/v2/yo/r/rsrc.php/v2/yY/r/rsrc.php/v2/yo/r/rsrc.php/v2/yY/r/rsrc.php/v2/yY/r/h_Y6u1wrZPW.png
Ignore web-beta.archive.org
Ignore blogger.com/email-post.g
Ignore loop on photobucket.com