allow setting endpoint without trampling credentials

I'd like to specify the endpoint without changing the credentials, so that I can do something like

```
(defcredential ":access-key" ":secret-key" "us-west-1")
(ec2/run-instances {:endpoint "us-east-1"} run-instance-args)
```

This might not be the right approach, but maybe it will get some discussion going.