Compile less stuff

Don't compile class initializers, compile programs with fewer than
commmand-line specified number of methods, mildly refactor SLOW_MODE,
rename into LIGHT_MODE.

Also, walks the image for uncompiled methods and fixes up with pointers to the
interpreter entry point.

(Removed hot method list and light method limit as these are experimental.)

Change-Id: I2ae33d8add84ab9f4d76f9d910cae422c81a7832
diff --git a/src/compiler/driver/compiler_driver.h b/src/compiler/driver/compiler_driver.h
index 385bc00..fae6902 100644
--- a/src/compiler/driver/compiler_driver.h
+++ b/src/compiler/driver/compiler_driver.h
@@ -67,9 +67,9 @@
   // can assume will be in the image, with NULL implying all available
   // classes.
   explicit CompilerDriver(CompilerBackend compiler_backend, InstructionSet instruction_set, bool image,
-                          size_t thread_count, bool support_debugging,
-                          const std::set<std::string>* image_classes, bool dump_stats,
-                          bool dump_timings);
+                          size_t thread_count, bool support_debugging, bool light_mode,
+                          const std::set<std::string>* image_classes, 
+                          bool dump_stats, bool dump_timings);
 
   ~CompilerDriver();
 
@@ -84,6 +84,10 @@
     return support_debugging_;
   }
 
+  bool IsLightMode() const {
+    return light_mode_;
+  }
+
   InstructionSet GetInstructionSet() const {
     return instruction_set_;
   }
@@ -340,6 +344,7 @@
   bool image_;
   size_t thread_count_;
   bool support_debugging_;
+  const bool light_mode_;
   uint64_t start_ns_;
 
   UniquePtr<AOTCompilationStats> stats_;