Allow per-repository endpoints

With this patch, the S3 endpoint is no longer a global setting. This allows creating repositories on AWS s3 and others to S3-compatible services, without doing cluster restarts between snapshots.

```
$ curl -X PUT 'http://localhost:9200/_snapshot/test' -d '{
    "type":"s3",
    "settings":{
        "bucket":"hello",
        "endpoint":"my-s3.example.com",
        "access_key":"access key here",
        "secret_key":"it's a secret"
    }
}'
```

I couldn't make this work completely on elasticsearch master (snapshot creation API call properly makes s3 requests but in the end does not respond. Might be an issue with my setup). However I have successfully tried [the same patch](https://github.com/brutasse/elasticsearch-cloud-aws/compare/es-1.3...repo-endpoint-1.3) with ES 1.3 and the es-1.3 branch of this repository. Snapshotting and restoring to [pithos](http://github.com/exoscale/pithos), our S3 implementation at @exoscale, worked beautifully.