moved string and UTF8 routines out of parser.c and encoding.c into a new

* encoding.c, parser.c, xmlstring.c, Makefile.am,
  include/libxml/Makefile.am, include/libxml/catalog.c,
  include/libxml/chvalid.h, include/libxml/encoding.h,
  include/libxml/parser.h, include/libxml/relaxng.h,
  include/libxml/tree.h, include/libxml/xmlwriter.h,
  include/libxml/xmlstring.h:
  moved string and UTF8 routines out of parser.c and encoding.c
  into a new module xmlstring.c with include file
  include/libxml/xmlstring.h mostly using patches from Reid
  Spencer.  Since xmlChar now defined in xmlstring.h, several
  include files needed to have a #include added for safety.
* doc/apibuild.py: added some additional sorting for various
  references displayed in the APIxxx.html files.  Rebuilt the
  docs, and also added new file for xmlstring module.
* configure.in: small addition to help my testing; no effect on
  normal usage.
* doc/search.php: added $_GET[query] so that persistent globals
  can be disabled (for recent versions of PHP)
diff --git a/doc/APIchunk23.html b/doc/APIchunk23.html
index d97e0d2..3ea33eb 100644
--- a/doc/APIchunk23.html
+++ b/doc/APIchunk23.html
@@ -81,8 +81,8 @@
 <a href="html/libxml-xmlreader.html#xmlReaderNewDoc">xmlReaderNewDoc</a><br />
 <a href="html/libxml-SAX2.html#xmlSAX2StartElement">xmlSAX2StartElement</a><br />
 <a href="html/libxml-xmlmemory.html#xmlStrdupFunc">xmlStrdupFunc</a><br />
-</dd><dt>termination</dt><dd><a href="html/libxml-parser.html#xmlStrcat">xmlStrcat</a><br />
-<a href="html/libxml-parser.html#xmlStrdup">xmlStrdup</a><br />
+</dd><dt>termination</dt><dd><a href="html/libxml-xmlstring.html#xmlStrcat">xmlStrcat</a><br />
+<a href="html/libxml-xmlstring.html#xmlStrdup">xmlStrdup</a><br />
 </dd><dt>test</dt><dd><a href="html/libxml-parserInternals.html#xmlParserHandleReference">xmlParserHandleReference</a><br />
 <a href="html/libxml-xpathInternals.html#xmlXPathEqualValues">xmlXPathEqualValues</a><br />
 <a href="html/libxml-xpathInternals.html#xmlXPathNotEqualValues">xmlXPathNotEqualValues</a><br />
@@ -90,7 +90,7 @@
 </dd><dt>testing</dt><dd><a href="html/libxml-xmlregexp.html#xmlRegexpCompile">xmlRegexpCompile</a><br />
 </dd><dt>text-node</dt><dd><a href="html/libxml-tree.html#xmlIsBlankNode">xmlIsBlankNode</a><br />
 </dd><dt>textDecl?</dt><dd><a href="html/libxml-parserInternals.html#xmlParseExternalSubset">xmlParseExternalSubset</a><br />
-</dd><dt>than</dt><dd><a href="html/libxml-encoding.html#xmlCheckUTF8">xmlCheckUTF8</a><br />
+</dd><dt>than</dt><dd><a href="html/libxml-xmlstring.html#xmlCheckUTF8">xmlCheckUTF8</a><br />
 <a href="html/libxml-tree.html#xmlNewNs">xmlNewNs</a><br />
 <a href="html/libxml-parserInternals.html#xmlParseAttribute">xmlParseAttribute</a><br />
 <a href="html/libxml-parserInternals.html#xmlParseAttributeType">xmlParseAttributeType</a><br />
@@ -99,7 +99,7 @@
 <a href="html/libxml-parserInternals.html#xmlParseSDDecl">xmlParseSDDecl</a><br />
 <a href="html/libxml-parserInternals.html#xmlParseStartTag">xmlParseStartTag</a><br />
 <a href="html/libxml-xmlerror.html#xmlSetGenericErrorFunc">xmlSetGenericErrorFunc</a><br />
-<a href="html/libxml-parser.html#xmlStrEqual">xmlStrEqual</a><br />
+<a href="html/libxml-xmlstring.html#xmlStrEqual">xmlStrEqual</a><br />
 <a href="html/libxml-xpathInternals.html#xmlXPathCeilingFunction">xmlXPathCeilingFunction</a><br />
 <a href="html/libxml-xpathInternals.html#xmlXPathCompareValues">xmlXPathCompareValues</a><br />
 <a href="html/libxml-xpathInternals.html#xmlXPathFloorFunction">xmlXPathFloorFunction</a><br />
@@ -153,14 +153,14 @@
 <a href="html/libxml-xpathInternals.html#xmlXPathStringFunction">xmlXPathStringFunction</a><br />
 <a href="html/libxml-xpathInternals.html#xmlXPathTranslateFunction">xmlXPathTranslateFunction</a><br />
 </dd><dt>these</dt><dd><a href="html/libxml-HTMLparser.html#_htmlElemDesc">_htmlElemDesc</a><br />
-<a href="html/libxml-encoding.html#xmlCheckUTF8">xmlCheckUTF8</a><br />
+<a href="html/libxml-xmlstring.html#xmlCheckUTF8">xmlCheckUTF8</a><br />
 <a href="html/libxml-parserInternals.html#xmlParseSDDecl">xmlParseSDDecl</a><br />
 </dd><dt>they</dt><dd><a href="html/libxml-HTMLparser.html#_htmlElemDesc">_htmlElemDesc</a><br />
 <a href="html/libxml-parser.html#xmlCreatePushParserCtxt">xmlCreatePushParserCtxt</a><br />
-<a href="html/libxml-parser.html#xmlStrEqual">xmlStrEqual</a><br />
-<a href="html/libxml-parser.html#xmlStrQEqual">xmlStrQEqual</a><br />
-<a href="html/libxml-parser.html#xmlStrcat">xmlStrcat</a><br />
-<a href="html/libxml-parser.html#xmlStrdup">xmlStrdup</a><br />
+<a href="html/libxml-xmlstring.html#xmlStrEqual">xmlStrEqual</a><br />
+<a href="html/libxml-xmlstring.html#xmlStrQEqual">xmlStrQEqual</a><br />
+<a href="html/libxml-xmlstring.html#xmlStrcat">xmlStrcat</a><br />
+<a href="html/libxml-xmlstring.html#xmlStrdup">xmlStrdup</a><br />
 </dd><dt>thing</dt><dd><a href="html/libxml-SAX2.html#xmlSAXDefaultVersion">xmlSAXDefaultVersion</a><br />
 </dd><dt>third</dt><dd><a href="html/libxml-hash.html#xmlHashAddEntry3">xmlHashAddEntry3</a><br />
 <a href="html/libxml-hash.html#xmlHashLookup3">xmlHashLookup3</a><br />
@@ -252,7 +252,7 @@
 <a href="html/libxml-tree.html#xmlSetTreeDoc">xmlSetTreeDoc</a><br />
 </dd><dt>total</dt><dd><a href="html/libxml-xmlIO.html#_xmlOutputBuffer">_xmlOutputBuffer</a><br />
 <a href="html/libxml-parser.html#xmlGetFeaturesList">xmlGetFeaturesList</a><br />
-<a href="html/libxml-encoding.html#xmlUTF8Strsub">xmlUTF8Strsub</a><br />
+<a href="html/libxml-xmlstring.html#xmlUTF8Strsub">xmlUTF8Strsub</a><br />
 </dd><dt>touch</dt><dd><a href="html/libxml-parser.html#_xmlParserCtxt">_xmlParserCtxt</a><br />
 </dd><dt>track</dt><dd><a href="html/libxml-parserInternals.html#xmlEntityReferenceFunc">xmlEntityReferenceFunc</a><br />
 </dd><dt>tracking</dt><dd><a href="html/libxml-xmlerror.html#xmlParserPrintFileContext">xmlParserPrintFileContext</a><br />
@@ -382,9 +382,9 @@
 <a href="html/libxml-tree.html#xmlHasProp">xmlHasProp</a><br />
 <a href="html/libxml-parser.html#xmlLineNumbersDefault">xmlLineNumbersDefault</a><br />
 </dd><dt>two</dt><dd><a href="html/libxml-parser.html#_xmlParserCtxt">_xmlParserCtxt</a><br />
-<a href="html/libxml-parser.html#xmlStrncatNew">xmlStrncatNew</a><br />
+<a href="html/libxml-xmlstring.html#xmlStrncatNew">xmlStrncatNew</a><br />
 <a href="html/libxml-tree.html#xmlTextMerge">xmlTextMerge</a><br />
-<a href="html/libxml-encoding.html#xmlUTF8Charcmp">xmlUTF8Charcmp</a><br />
+<a href="html/libxml-xmlstring.html#xmlUTF8Charcmp">xmlUTF8Charcmp</a><br />
 <a href="html/libxml-xpath.html#xmlXPathCmpNodes">xmlXPathCmpNodes</a><br />
 <a href="html/libxml-xpathInternals.html#xmlXPathDifference">xmlXPathDifference</a><br />
 <a href="html/libxml-xpathInternals.html#xmlXPathNodeSetMerge">xmlXPathNodeSetMerge</a><br />