headers MAINTENANCE headers/include cleanup

- add missing extern "C" in some of the public headers for use in C++
- includes cleanup and fix ordering
diff --git a/tests/utests/data/test_parser_xml.c b/tests/utests/data/test_parser_xml.c
index e7b16f3..e81a3f0 100644
--- a/tests/utests/data/test_parser_xml.c
+++ b/tests/utests/data/test_parser_xml.c
@@ -24,6 +24,7 @@
 
 #include "../../src/context.h"
 #include "../../src/tree_data_internal.h"
+#include "../../src/tree_schema.h"
 #include "../../src/printer.h"
 #include "../../src/printer_data.h"
 
diff --git a/tests/utests/data/test_printer_xml.c b/tests/utests/data/test_printer_xml.c
index b36d8d5..ad15d16 100644
--- a/tests/utests/data/test_printer_xml.c
+++ b/tests/utests/data/test_printer_xml.c
@@ -18,6 +18,7 @@
 #include <cmocka.h>
 
 #include <stdio.h>
+#include <stdlib.h>
 #include <string.h>
 
 #include "tests/config.h"
@@ -25,6 +26,7 @@
 #include "../../src/context.h"
 #include "../../src/printer.h"
 #include "../../src/printer_data.h"
+#include "../../src/tree_schema.h"
 
 #define BUFSIZE 1024
 char logbuf[BUFSIZE] = {0};
diff --git a/tests/utests/data/test_validation.c b/tests/utests/data/test_validation.c
index 04177a5..836ad25 100644
--- a/tests/utests/data/test_validation.c
+++ b/tests/utests/data/test_validation.c
@@ -23,6 +23,7 @@
 #include <string.h>
 
 #include "../../src/context.h"
+#include "../../src/tree_schema.h"
 #include "../../src/tree_data_internal.h"
 #include "../../src/printer.h"
 #include "../../src/printer_data.h"
diff --git a/tests/utests/schema/test_printer_yin.c b/tests/utests/schema/test_printer_yin.c
index 9991e0f..7ab8b0e 100644
--- a/tests/utests/schema/test_printer_yin.c
+++ b/tests/utests/schema/test_printer_yin.c
@@ -18,6 +18,7 @@
 #include <cmocka.h>
 
 #include <stdio.h>
+#include <stdlib.h>
 #include <string.h>
 
 #include "../../src/context.h"
diff --git a/tests/utests/schema/test_schema.c b/tests/utests/schema/test_schema.c
index b330a7d..559b193 100644
--- a/tests/utests/schema/test_schema.c
+++ b/tests/utests/schema/test_schema.c
@@ -18,11 +18,14 @@
 #include <setjmp.h>
 #include <cmocka.h>
 
+#include <string.h>
+
 #include "../../../src/common.h"
 #include "../../../src/context.h"
+#include "../../../src/log.h"
+#include "../../../src/parser_yin.h"
 #include "../../../src/tree_schema.h"
 #include "../../../src/tree_schema_internal.h"
-#include "../../../src/parser_yin.h"
 #include "../../../src/xml.h"
 
 
diff --git a/tests/utests/test_common.c b/tests/utests/test_common.c
index 74f5e3d..0984e1e 100644
--- a/tests/utests/test_common.c
+++ b/tests/utests/test_common.c
@@ -12,11 +12,17 @@
  *     https://opensource.org/licenses/BSD-3-Clause
  */
 
+
+
 #include <stdarg.h>
 #include <stddef.h>
 #include <setjmp.h>
 #include <cmocka.h>
 
+#include <string.h>
+#include <stdlib.h>
+#include <stdio.h>
+
 #include "../../src/common.h"
 
 #define BUFSIZE 1024
diff --git a/tests/utests/test_hash_table.c b/tests/utests/test_hash_table.c
index f705db0..3e17552 100644
--- a/tests/utests/test_hash_table.c
+++ b/tests/utests/test_hash_table.c
@@ -24,6 +24,7 @@
 #include <cmocka.h>
 
 #include <string.h>
+#include <stdlib.h>
 #include <stdio.h>
 
 #include "../../src/hash_table.h"