Move tests outside the package.
Add support for the Vary header on requests.
Comment on a httplib2 implementation detail.

httplib2 rewrites part of the headers when writing the content to the
cache. This is because it doesn't have access to the original
request. Since we are expecting Response objects, we already have the
original request available to peek at.

If urllib3 every makes serialization of requests possible and we can use
that mechanism to do something similar with cache control, I want to
move the header into the key name some how. For example, adding a
fragment after the fact or using a hash rather than a specific URL
format.