Add the signal catcher (for SIGQUIT and SIGUSR1).

Also fix some of the thread implementation.

Change-Id: If2d1b59a149ba1ac192ad9bc74319c8dff228549
diff --git a/src/runtime.h b/src/runtime.h
index b6873e3..eaf8ace 100644
--- a/src/runtime.h
+++ b/src/runtime.h
@@ -5,6 +5,7 @@
 
 #include <stdio.h>
 
+#include <iosfwd>
 #include <string>
 #include <utility>
 #include <vector>
@@ -23,6 +24,7 @@
 class DexFile;
 class Heap;
 class JavaVMExt;
+class SignalCatcher;
 class String;
 class ThreadList;
 
@@ -76,6 +78,8 @@
   // Detaches the current native thread from the runtime.
   bool DetachCurrentThread();
 
+  void DumpStatistics(std::ostream& os);
+
   ~Runtime();
 
   size_t GetStackSize() const {
@@ -106,6 +110,8 @@
 
   ClassLinker* class_linker_;
 
+  SignalCatcher* signal_catcher_;
+
   JavaVMExt* java_vm_;
 
   // Hooks supported by JNI_CreateJavaVM