I started with a model where you would call something like this:
```
sshClient = ssh.NewSSHClient("core", tun)
sshClient = ssh.JumpSSHClient(sshClient, "core", addr)
```
...but as you can see I did not end up keeping that pattern. I feel like this function name is much clearer. We don't have the use-case for an arbitrary number of jumps yet, so I felt like stopping at two was fine.