MINOR: includes: fix a lot of missing or useless includes

These modifications are done for resolving cross-dependent
includes in the upcoming LUA code.

<proto/channel.h> misses <types/channel.h>.

<types/acl.h> doesn't use <types/session.h> because the session
is already declared in the file as undefined pointer.

appsession.c misses <unistd.h> to use "write()".

Declare undefined pointer "struct session" for <types/proxy.h>
and <types/queue.h>. These includes dont need the detail of this
struct.
diff --git a/include/types/queue.h b/include/types/queue.h
index 922aa92..9ff8df5 100644
--- a/include/types/queue.h
+++ b/include/types/queue.h
@@ -26,7 +26,8 @@
 #include <common/mini-clist.h>
 
 #include <types/server.h>
-#include <types/session.h>
+
+struct session;
 
 struct pendconn {
 	struct list list;		/* chaining ... */