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/trace.h b/src/trace.h
index e3f254e..1be1cc4 100644
--- a/src/trace.h
+++ b/src/trace.h
@@ -29,7 +29,9 @@
 
 namespace art {
 
+namespace mirror {
 class AbstractMethod;
+}  // namespace mirror
 class Thread;
 
 enum ProfilerClockSource {
@@ -59,7 +61,7 @@
   bool UseWallClock();
   bool UseThreadCpuClock();
 
-  void LogMethodTraceEvent(Thread* self, const AbstractMethod* method, TraceEvent event);
+  void LogMethodTraceEvent(Thread* self, const mirror::AbstractMethod* method, TraceEvent event);
 
  private:
   explicit Trace(File* trace_file, int buffer_size, int flags);
@@ -73,7 +75,7 @@
   void DumpThreadList(std::ostream& os) LOCKS_EXCLUDED(Locks::thread_list_lock_);
 
   // Set of methods visited by the profiler.
-  std::set<const AbstractMethod*> visited_methods_;
+  std::set<const mirror::AbstractMethod*> visited_methods_;
 
   // Maps a thread to its clock base.
   SafeMap<Thread*, uint64_t> thread_clock_base_map_;