adds headers config option for S3 cache

'headers' is an optional metadata dictionary containing key/value header pairs that will be set on each saved tile, e.g. 

    {
        "cache": {
            "name": "S3",
            ...
            "headers": {
                "Cache-Control": "max-age=25200, public"
            }
        },
        ...
    }
It's not a good practice to use [mutable default arguments in function definitions](http://docs.python-guide.org/en/latest/writing/gotchas/#mutable-default-arguments).