REORG: include: split buf.h into haproxy/buf-t.h and haproxy/buf.h

File buf.h is one common cause of pain in the dependencies. Many files in
the code need it to get the struct buffer definition, and a few also need
the inlined functions to manipulate a buffer, but the file used to depend
on a long chain only for BUG_ON() (addressed by last commit).

Now buf.h is split into buf-t.h which only contains the type definitions,
and buf.h for all inlined functions. Callers who don't care can continue
to use buf.h but files in types/ must only use buf-t.h. sys/types.h had
to be added to buf.h to get ssize_t as used by b_move(). It's worth noting
that ssize_t is only supposed to be a size_t supporting -1, so b_move()
ought to be rethought regarding this.

The files were moved to haproxy/ and all their users were updated
accordingly. A dependency issue was addressed on fcgi whose C file didn't
include buf.h.
diff --git a/include/common/fcgi.h b/include/common/fcgi.h
index 6d3c6eb..b822a2c 100644
--- a/include/common/fcgi.h
+++ b/include/common/fcgi.h
@@ -25,7 +25,7 @@
 #include <stdio.h>
 #include <haproxy/api.h>
 #include <common/standard.h>
-#include <common/buf.h>
+#include <haproxy/buf-t.h>
 #include <import/ist.h>
 
 /* FCGI protocol version */