MEDIUM: http: move header captures from http_txn to struct stream

The header captures are now general purpose captures since tcp rules
can use them to capture various contents. That removes a dependency
on http_txn that appeared in some sample fetch functions and in the
order by which captures and http_txn were allocated.

Interestingly the reset of the header captures were done at too many
places as http_init_txn() used to do it while it was done previously
in every call place.
diff --git a/src/frontend.c b/src/frontend.c
index caf0fc2..3a71bc4 100644
--- a/src/frontend.c
+++ b/src/frontend.c
@@ -111,15 +111,15 @@
 		setsockopt(cfd, SOL_SOCKET, SO_RCVBUF, &global.tune.client_rcvbuf, sizeof(global.tune.client_rcvbuf));
 
 	if (unlikely(fe->nb_req_cap > 0)) {
-		if ((s->txn.req.cap = pool_alloc2(fe->req_cap_pool)) == NULL)
+		if ((s->req_cap = pool_alloc2(fe->req_cap_pool)) == NULL)
 			goto out_return;	/* no memory */
-		memset(s->txn.req.cap, 0, fe->nb_req_cap * sizeof(void *));
+		memset(s->req_cap, 0, fe->nb_req_cap * sizeof(void *));
 	}
 
 	if (unlikely(fe->nb_rsp_cap > 0)) {
-		if ((s->txn.rsp.cap = pool_alloc2(fe->rsp_cap_pool)) == NULL)
+		if ((s->res_cap = pool_alloc2(fe->rsp_cap_pool)) == NULL)
 			goto out_free_reqcap;	/* no memory */
-		memset(s->txn.rsp.cap, 0, fe->nb_rsp_cap * sizeof(void *));
+		memset(s->res_cap, 0, fe->nb_rsp_cap * sizeof(void *));
 	}
 
 	if (fe->http_needed) {
@@ -209,9 +209,9 @@
 
 	/* Error unrolling */
  out_free_rspcap:
-	pool_free2(fe->rsp_cap_pool, s->txn.rsp.cap);
+	pool_free2(fe->rsp_cap_pool, s->res_cap);
  out_free_reqcap:
-	pool_free2(fe->req_cap_pool, s->txn.req.cap);
+	pool_free2(fe->req_cap_pool, s->req_cap);
  out_return:
 	return -1;
 }