MAJOR: connection: call data layer handshakes from the handler

Handshakes is not called anymore from the data handlers, they're only
called from the connection handler when their flag is set.

Also, this move has uncovered an issue with the stream interface notifier :
it doesn't consider the FD_WAIT_* flags possibly set by the handshake
handlers. This will result in a stuck handshake when no data is in the
output buffer. In order to cover this, for now we'll perform the EV_FD_SET
in the SSL handshake function, but this needs to be addressed separately
from the stream interface operations.
diff --git a/src/stream_interface.c b/src/stream_interface.c
index 8415abb..cf26b51 100644
--- a/src/stream_interface.c
+++ b/src/stream_interface.c
@@ -502,7 +502,7 @@
 		si->flags |= SI_FL_ERR;
 
 	/* check for recent connection establishment */
-	if (!(conn->flags & (CO_FL_WAIT_L4_CONN | CO_FL_CONNECTED))) {
+	if (unlikely(!(conn->flags & (CO_FL_WAIT_L4_CONN | CO_FL_WAIT_L6_CONN | CO_FL_CONNECTED)))) {
 		si->exp = TICK_ETERNITY;
 		si->ob->flags |= BF_WRITE_NULL;
 	}