integrated the Out Of Memory test from Havoc Pennington #109368 a lot of

* Makefile.am testOOM.c testOOMlib.[ch] : integrated the Out Of
  Memory test from Havoc Pennington #109368
* SAX.c parser.c parserInternals.c tree.c uri.c valid.c
  xmlmemory.c xmlreader.c xmlregexp.c include/libxml/tree.h
  include/libxml/parser.h: a lot of memory allocation cleanups
  based on the results of the OOM testing
* check-relaxng-test-suite2.py: seems I forgot to commit the
  script.
Daniel
diff --git a/testOOMlib.h b/testOOMlib.h
new file mode 100644
index 0000000..751999d
--- /dev/null
+++ b/testOOMlib.h
@@ -0,0 +1,26 @@
+#ifndef TEST_OOM_LIB_H
+#define TEST_OOM_LIB_H
+
+#include <config.h>
+
+#ifdef HAVE_SYS_TYPES_H
+#include <sys/types.h>
+#endif
+
+void* test_malloc  (size_t      bytes);
+void* test_realloc (void       *memory,
+                    size_t      bytes);
+void  test_free    (void       *memory);
+char* test_strdup  (const char *str);
+
+/* returns true on success */
+typedef int (* TestMemoryFunction)  (void *data);
+
+/* returns true on success */
+int test_oom_handling (TestMemoryFunction  func,
+                       void               *data);
+
+/* get number of blocks leaked */
+int test_get_malloc_blocks_outstanding (void);
+
+#endif