Move String::SizeOf<> to string.h .

string.h was already indirectly (through class.h) including
everything needed for String::SizeOf<>, so move it to the
string.h and make those includes direct. Then we can change
the object-inl.h to include only string.h, reducing the
number of indirectly included files.

Test: m test-art-host-gtest
Test: m testrunner.py --host --optimizing
Change-Id: I51c462c034f205498c539abe6d888be9738d4a6e
diff --git a/openjdkjvmti/ti_class_loader.h b/openjdkjvmti/ti_class_loader.h
index a3857e5..577c285 100644
--- a/openjdkjvmti/ti_class_loader.h
+++ b/openjdkjvmti/ti_class_loader.h
@@ -36,32 +36,19 @@
 
 #include <jni.h>
 
-#include "art_jvmti.h"
-#include "art_method.h"
-#include "base/array_slice.h"
 #include "base/globals.h"
-#include "base/mem_map.h"
-#include "class_linker.h"
-#include "dex/dex_file.h"
-#include "dex/utf.h"
-#include "gc_root-inl.h"
-#include "jni/jni_env_ext-inl.h"
+#include "base/mutex.h"
 #include "jvmti.h"
-#include "linear_alloc.h"
-#include "mirror/array-inl.h"
 #include "mirror/array.h"
-#include "mirror/class-inl.h"
-#include "mirror/class.h"
-#include "mirror/class_loader-inl.h"
-#include "mirror/string-inl.h"
-#include "oat_file.h"
-#include "obj_ptr.h"
-#include "scoped_thread_state_change-inl.h"
-#include "stack.h"
-#include "thread_list.h"
-#include "ti_class_definition.h"
-#include "transform.h"
-#include "utils/dex_cache_arrays_layout-inl.h"
+
+namespace art {
+
+class DexFile;
+template <class MirrorType> class Handle;
+template <class MirrorType> class ObjPtr;
+class Thread;
+
+}  // namespace art
 
 namespace openjdkjvmti {