Switch PEP3143 Daemon Implementation

Previously, there was some complaint that python-daemon is an annoying
dependency to have.  What sealed its fate is that it depends on an
obsolete version of "lockfile", and that makes it an unacceptable pain
to vendor it and its dependencies when necessary.

Instead, vendor an implementation from Stephan Schultchen, as seen at
https://pypi.python.org/pypi/pep3143daemon.  This doesn't require
lockfile and is smaller.  This project is distributed under MIT, and the
version copied is from a modified version that fixes an obscure
difference in how processes are exited:
https://github.com/fdr/pep3143daemon/commit/5c091da7f5a912bc35e349fa4d0249915c233813
Fix PEP8/pyflakes failures in pep3143daemon
Use s3-external-1 endpoint for us-standard

This is the endpoint in us-east-1, where most instances are.  This is
not being applied to the v0.6 maintenance releases to avoid changing
behavior for those who are closer to Seattle.
Elide other backends besides S3 in requirements.txt

It's not clear how to make things cleanly optional but not a usability
nightmare (e.g. installing *no* backends by default for 'pip install'
based people) within the Python packaging framework, so don't try..for
now.
Avoid deleting keys that have a new-ish timestamp

This is a paranoid safeguard against mess-ups; even if turned against
the wrong prefix it is likely many backups will be retained.

Some of the tests need adjustmenmts to not freak out about this
safeguard.
Increase socket timeout to deal with pathological cross-region issues
Try to fix timeouts by using cat semi-async-i/o exclusively
Implement manifests and checksumming of backups

After a download, one can run now run "wal-e backup-verify" to make
sure that all files are present and, optionally, have expected
content.

Slightly editorialized by Daniel Farina <daniel@heroku.com>
Fix use of positional formats for Python 2.6

While not important for Heroku, it's easier to fix this as to be able to
run the full test battery without fuss.
Allow manifest deletion when running 'delete'

Previously, these would fail with this message:

    WARNING  MSG: skipping non-qualifying key in 'delete before'
    DETAIL: The unexpected key is
    "s3://[...]/base_[...]/manifests/part_00000000.json"

That's because manifests introduce a new object as part of backups that
was not itemized in the delete code.