Enhanced the handling of UTF-16, UTF-16LE and UTF-16BE encodings. Now

* encoding.c, include/libxml/encoding.h: Enhanced the handling of UTF-16,
  UTF-16LE and UTF-16BE encodings.  Now UTF-16 output is handled internally
  by default, with proper BOM and UTF-16LE encoding.  Native UTF-16LE and
  UTF-16BE encoding will not generate a BOM on output, and will be
  automatically recognized on input.
* test/utf16lebom.xml, test/utf16bebom.xml, result/utf16?ebom*: added
  regression tests for above.
diff --git a/result/utf16bebom.xml.rdr b/result/utf16bebom.xml.rdr
new file mode 100644
index 0000000..f69338a
--- /dev/null
+++ b/result/utf16bebom.xml.rdr
@@ -0,0 +1,4 @@
+0 8 #comment 0 1  This file is encoded in UTF-16BE 
+0 1 repository 0 0
+1 1 namespace 1 0
+0 15 repository 0 0