Clean up some includes.

Remove some unnecessary includes from header files, replace
others with forward references and add includes to source
files as needed. Reduce dependency on stack.h by pulling
StackReference<> out to its own file.

Test: m test-art-host
Change-Id: I0fb182145e328870cbd918b0ef6ae2950223c1b2
diff --git a/runtime/dex_file.cc b/runtime/dex_file.cc
index 90c678c..24d73ef 100644
--- a/runtime/dex_file.cc
+++ b/runtime/dex_file.cc
@@ -42,6 +42,7 @@
 #include "dex_file_verifier.h"
 #include "globals.h"
 #include "handle_scope-inl.h"
+#include "jvalue.h"
 #include "leb128.h"
 #include "mirror/field.h"
 #include "mirror/method.h"
@@ -68,6 +69,11 @@
   {'0', '3', '8', '\0'}
 };
 
+struct DexFile::AnnotationValue {
+  JValue value_;
+  uint8_t type_;
+};
+
 bool DexFile::GetChecksum(const char* filename, uint32_t* checksum, std::string* error_msg) {
   CHECK(checksum != nullptr);
   uint32_t magic;