Add TLS support

OK, so adding the ServerName here is really to tie in to the underlying cert validation code. It has the biproduct of also triggering SNI correct? But that doesn't really matter because of the tunneling.