Add support for specifying host port

Allowing different ports enables a single test controller to have ssh tunnels to multiple test clients, otherwise we'd be stuck with a costly 1:1 mapping from controllers to clients.