revamped the elfgcchack.h format to cope with gcc4 change of aliasing

* doc/apibuild.py doc/elfgcchack.xsl: revamped the elfgcchack.h
  format to cope with gcc4 change of aliasing allowed scopes, had
  to add extra informations to doc/libxml2-api.xml to separate
  the header from the c module source.
* *.c: updated all c library files to add a #define bottom_xxx
  and reimport elfgcchack.h thereafter, and a bit of cleanups.
* doc//* testapi.c: regenerated when rebuilding the API
Daniel
diff --git a/legacy.c b/legacy.c
index dad1d83..bbbd2c9 100644
--- a/legacy.c
+++ b/legacy.c
@@ -1338,5 +1338,7 @@
     DEPRECATED("cdataBlock")
         xmlSAX2CDataBlock(ctx, value, len);
 }
+#define bottom_legacy
+#include "elfgcchack.h"
 #endif /* LIBXML_LEGACY_ENABLED */