Coarsely modularize ArchiveBot's Python code.

pipeline.py was 477 lines of code that I'm finding increasingly
difficult to change.  The wpull hooks are becoming similarly painful.

There are some pipeline changes that I'd like to do to make pipeline IDs
sticky (to ease recall), and there are also some changes I'd like to
eventually make to ArchiveBot's wpull hooks to make them more efficient,
i.e. not checking every request completion for job settings updates.

This commit splits up ArchiveBot's pipeline and wpull code by rough
functional groups: Seesaw extensions, Seesaw tasks, Seesaw monitoring,
wpull hooks, and helper methods for those hooks.

Finer divisions could be drawn, but this is probably enough
modularization for now.  As I mentioned above, I would like to make
pipeline IDs easier to reference, and the pipeline's now in a state
where I can change the pipeline ID generation code with enough
confidence that I won't be breaking something else.