Some functional tests for object versioning

Also fix some exception-handling stuff in functional tests; at some
point, ResponseError() started needing two more parameters, but the
functional tests (not swift_test_client, just tests.py) still had a
couple spots that were not passing in the new params. Now they're
optional again, and if you omit them, then the stringification of the
ResponseError is just a little less useful than it could be.

Change-Id: I38968c4b590fc04b97b85c5f974c8648291a6689
Remove dependencies on pep8, pyflakes and flake8

They should be determined by the hacking dependency
implicitely.

Change-Id: I8805f7b0ef9f2b1f59be342e9c6d032330707688
Make swift-recon usable on hosts without IPv6

Fixes a bug when swift-recon --sockstat is used on hosts without
IPv6 support.

Tested by disabling IPv6 on Ubuntu 12.04 LTS:

Add "ipv6.disable=1" to GRUB_CMDLINE_LINUX_DEFAULT in /etc/default/grub
sudo update-grub
sudo /sbin/reboot

Closes-Bug: 1270711
Change-Id: Ib31a059e412ac68ca0a3faef4201fec7560d1178
Skip delete_at_update for replication requests

Requests through the object server that are from backend replication
should not send x-delete-at updates to the .expiring_objects account.
Replication is just moving data around or making new replicas, not
creating new data from nothing.

Change-Id: I324864face3ff559822c7a50c50e675e8b889b48
Container Sync: Simple HTTP Proxy load balancing

Change-Id: I021b043b927153bacff48cae648d4d8c5bbad765
Config option to lower the timeout for recoverable object GETs.

Change-Id: I71f9824559126e4025e7629715ab9dac64231e09
Add a way to ratelimit all writes to an account

This is in case a cluster gets a problem user who has distributed the
writes to a bunch of containers but is just taking too much of the
cluster's resources.

Change-Id: Ibd2ffd0e911463a432117b478585b9f8bc4a2495
Merge "Config option to lower the timeout for recoverable object GETs."
Merge "Some functional tests for object versioning"
Merge "Skip delete_at_update for replication requests"
Merge "Make swift-recon usable on hosts without IPv6"
Merge "Container Sync: Simple HTTP Proxy load balancing"
Attempt to fix periodic memcache timeout test

Not sure this will really fix the issue, but made a small change that
seemed to make more sense for the flow of the test.

Closes-Bug: #1272503
Change-Id: Ifb25ed7c4a42b11f74d865787f63fea4e0beb745
Merge "Add a way to ratelimit all writes to an account"
Merge "Attempt to fix periodic memcache timeout test"
Merge "Remove dependencies on pep8, pyflakes and flake8"
Merge "Privileged acct ACL header, new ACL syntax, TempAuth impl."
Add list-containers access level to account ACLs in tempauth.

Supplementing the existing access levels "admin", "read-write", and
"read-only", the new "list-containers" access level allows GET and HEAD
operations on the account, but no operations on containers or objects.  This
allows users with this access to get a list of the containers in an account.
Further access within an individual container may be granted via container
ACLs, if desired.

Doc-Impact: Updated overview-auth.rst with the new access level.

Change-Id: If0c8d8d1037d595fad87122279b5ad0abf75331b