Be better behaved with WANT_READ, etc. in proxy_tls_recv()

Split out the functionality so that it can potentially
be called from proxy_tls_send(), too
Use talloc_get_type_abort in free_walker

This might help us track down the random travis failures