MAJOR: sessions: Store multiple outgoing connections in the session.

Instead of just storing the last connection in the session, store all of
the connections, for at most MAX_SRV_LIST (currently 5) targets.
That way we can do keepalive on more than 1 outgoing connection when the
client uses HTTP/2.
diff --git a/include/types/connection.h b/include/types/connection.h
index dbf985b..85afca0 100644
--- a/include/types/connection.h
+++ b/include/types/connection.h
@@ -414,7 +414,7 @@
 	struct wait_event *send_wait; /* Task to wake when we're ready to send */
 	struct wait_event *recv_wait; /* Task to wake when we're ready to recv */
 	struct list list;             /* attach point to various connection lists (idle, ...) */
-	struct list session_list;     /* List of all sessions attached to this connection */
+	struct list session_list;     /* List of attached connections to a session */
 	int xprt_st;                  /* transport layer state, initialized to zero */
 	int tmp_early_data;           /* 1st byte of early data, if any */
 	int sent_early_data;          /* Amount of early data we sent so far */