Assorted fixes for running frameworks apps

- Adding Heap::target_utililization_
- Convert ClassNotFoundError to ClassNotFoundException in Class.forName
- Finish String::GetHashCode
- Changed Runtime.gc to unimplemented
- Disable preload simulation in oat_process
- Empty native placeholder for org.apache.harmony.dalvik.ddmc.DdmServer
- Bonus: Fix problem with reflective invocation of constructors and private methods

Change-Id: If11b273e2f82e8e0fa7161a756098514e1156a19
diff --git a/src/heap.h b/src/heap.h
index ea05a73..b669a86 100644
--- a/src/heap.h
+++ b/src/heap.h
@@ -87,12 +87,11 @@
   }
   // Implements dalvik.system.VMRuntime.getTargetHeapUtilization.
   static float GetTargetHeapUtilization() {
-    UNIMPLEMENTED(WARNING);
-    return 0.0f;
+    return target_utilization_;
   }
   // Implements dalvik.system.VMRuntime.setTargetHeapUtilization.
   static void SetTargetHeapUtilization(float target) {
-    UNIMPLEMENTED(WARNING);
+    target_utilization_ = target;
   }
 
   // Blocks the caller until the garbage collector becomes idle.
@@ -240,6 +239,9 @@
   // offset of java.lang.ref.FinalizerReference.zombie
   static MemberOffset finalizer_reference_zombie_offset_;
 
+  // Target ideal heap utilization ratio
+  static float target_utilization_;
+
   static bool verify_objects_;
 
   DISALLOW_IMPLICIT_CONSTRUCTORS(Heap);