support multiple buckets for storing caches

With this change, the `cache_options` config may also be an array.

Single entry (compatible with what travis-build expects, currently supported):

``` yaml
cache_options:
  s3:
    secret_access_key: ...
    access_key_id: ...
    bucket_name: ...
```

Multi-bucket config (added by this PR):

``` yaml
cache_options:
- s3:
    secret_access_key: ...
    access_key_id: ...
    bucket_name: ...
- s3:
    secret_access_key: ...
    access_key_id: ...
    bucket_name: ...
```

This is needed to fix the issue with caches for mac not showing and not being deletable.