fixed to skip (if necessary) the BOM for encoding 'utf-16'. Completes the

* parserInternals.c: fixed to skip (if necessary) the BOM for
  encoding 'utf-16'.  Completes the fix for bug #152286.
* tree.c, parser.c: minor warning cleanup, no change to logic
diff --git a/parserInternals.c b/parserInternals.c
index 994aaa2..807169b 100644
--- a/parserInternals.c
+++ b/parserInternals.c
@@ -1145,7 +1145,8 @@
              * UTF-16
              */
             if ((handler->name != NULL) &&
-                (!strcmp(handler->name, "UTF-16LE")) &&
+                (!strcmp(handler->name, "UTF-16LE") ||
+                 !strcmp(handler->name, "UTF-16")) &&
                 (input->cur[0] == 0xFF) && (input->cur[1] == 0xFE)) {
                 input->cur += 2;
             }