reconnect ssh tunnel if it fails for some reason, send keep-alive packet every minute
remove unused jetty httpclient import from api class
log exceptions when forwarding requests
add tests to check if forwarding and tunnel itself
work properly. forwarding checks if we can reach the hub.
the tunnel check creates a local server return a random number,
then we make a request which should go all the way through the tunnel.
if the returned number equals the random number then all is ok.
make sure we stop the test server after test