Directory restructuring of object.h

Break object.h into constituent files.
Reduce number of #includes in other GC header files.
Introduce -inl.h files to avoid mirror files #include-ing each other.
Check invariants of verifier RegTypes for all constructors.

Change-Id: Iecf1171c02910ac152d52947330ef456df4043bc
diff --git a/src/monitor_android.cc b/src/monitor_android.cc
index 6e22237..d3ac143 100644
--- a/src/monitor_android.cc
+++ b/src/monitor_android.cc
@@ -15,7 +15,6 @@
  */
 
 #include "monitor.h"
-#include "object.h"
 #include "thread.h"
 
 #include <fcntl.h>
@@ -79,7 +78,7 @@
 
   // Emit the source code file name, <= 37 bytes.
   uintptr_t pc;
-  AbstractMethod* m = self->GetCurrentMethod(&pc);
+  mirror::AbstractMethod* m = self->GetCurrentMethod(&pc);
   const char* filename;
   uint32_t line_number;
   TranslateLocation(m, pc, filename, line_number);