URL escape GitHub username

When we provide an invalid username:

```bash
$ gh-auth add --users='!invalid'
```

We'll now see:

```bash
Github user '!invalid' does not exist
Adding 0 key(s) to '/Users/chris/.ssh/authorized_keys'
```

Instead of:

```bash
(URI::InvalidURIError)
```