Headers field in S3 get query, to allow If-ModifiedSince

Hi Stefan

We needed to get S3 files only if changed since the timestamp of a local copy, so I've forked and implemented a small change which allows a 'headers' field in the S3 GET query, to let us do:

      q.headers['If-Modified-Since'] = timestamp.toUTCString();

Please let me know if you're happy with this, or if you'd like to allow this via another means.

(best regards from my colleague Dave Cleal, by the way...)
(Oh, and a while back Dave issued a pull request which inadvertently included some CloudFront work I'd done. We're just about to use this, so I'll reinstate and get another pull request in shortly...)

Thanks

David Harvey