ClassLinker can now FindClass all libcore classes

Summary:
- added ClassLinkerTest/LibCore test of finding all libcore classes
- fixed bug in LinkInterfaceMethods appending mirant methods to vtable_
- fixed bug in LinkVirtualMethods allocating subclass vtable_
- fixed mmap bug in MarkStack::Init
- bumped default (and max) heap sizes to handle ClassLinkerTest/LibCore
- made ObjectArray a templated class
- heap allocate Class::vtable_
- "mm test-art" and "mm test-art-target" added
- new is_host_ for use by tests

Details:

    Added support for "mm test-art" and "mm test-art-target" in addition to test-art-host
	Android.mk

    Made ObjectArray a template class for clearer declarations and to
    remove need the need for down_cast.

	src/object.h
	src/object_test.cc
	src/class_linker.cc
	src/class_linker.h
	src/dex_cache.cc
	src/dex_cache.h
	src/dex_cache_test.cc
	src/mark_sweep.cc

    Made Class::vtable_ a heap allocated ObjectArray<Method>

	src/class_linker.cc

    Fix bug in ClassLinker::LinkInterfaceMethods where we were not
    extending the vtable_ before appending miranda methods.

	src/class_linker.cc

    Changed all uses of DexFile* in ClassLinker to be const

	src/class_linker.cc
	src/class_linker.h

    Fix bug in ClassLinker::LinkVirtualMethods where we were using
    NumVirtualMethods vs vtable->GetLength when determining new max
    vtable_ length.

	src/class_linker.cc

    New ClassLinkerTest/LibCore that enumerates the libcore dex file
    and tries to FindClass every descriptor found.

	src/class_linker_test.cc

    Added if_host_ check for host only tests. In the future will use
    for picking proper location of files, etc. on host vs target.

	src/common_test.h

    Fixed test to use ClassLinker::AllocDexCache

	src/dex_cache_test.cc

    Fixed fooIds comments to foo_ids_

	src/dex_file.h

    Bumped default heap size (and max as well) to make ClassLinkerTest/LibCore run

	src/heap.h

    Fixed bug where we were not using MAP_ANONYMOUS for MarkStack
    allocation found running ClassLinkerTest/LibCore.

	src/mark_stack.cc

Change-Id: I204e2ec7205210e2b60f5b81d126ab6e1da5a71c
diff --git a/src/dex_file.h b/src/dex_file.h
index 4d00537..63fefae 100644
--- a/src/dex_file.h
+++ b/src/dex_file.h
@@ -87,16 +87,16 @@
 
   // Raw field_id_item.
   struct FieldId {
-    uint16_t class_idx_;  // index into typeIds list for defining class
-    uint16_t type_idx_;  // index into typeIds for field type
-    uint32_t name_idx_;  // index into stringIds for field name
+    uint16_t class_idx_;  // index into type_ids_ list for defining class
+    uint16_t type_idx_;  // index into type_ids_ for field type
+    uint32_t name_idx_;  // index into string_ids_ for field name
   };
 
   // Raw method_id_item.
   struct MethodId {
-    uint16_t class_idx_;  // index into typeIds list for defining class
-    uint16_t proto_idx_;  // index into protoIds for method prototype
-    uint32_t name_idx_;  // index into stringIds for method name
+    uint16_t class_idx_;  // index into type_ids_ list for defining class
+    uint16_t proto_idx_;  // index into proto_ids_ for method prototype
+    uint32_t name_idx_;  // index into string_ids_ for method name
   };
 
   // Raw proto_id_item.
@@ -108,11 +108,11 @@
 
   // Raw class_def_item.
   struct ClassDef {
-    uint32_t class_idx_;  // index into typeIds for this class
+    uint32_t class_idx_;  // index into type_ids_ for this class
     uint32_t access_flags_;
-    uint32_t superclass_idx_;  // index into typeIds for superclass
+    uint32_t superclass_idx_;  // index into type_ids_ for superclass
     uint32_t interfaces_off_;  // file offset to TypeList
-    uint32_t source_file_idx_;  // index into stringIds for source file name
+    uint32_t source_file_idx_;  // index into string_ids_ for source file name
     uint32_t annotations_off_;  // file offset to annotations_directory_item
     uint32_t class_data_off_;  // file offset to class_data_item
     uint32_t static_values_off_;  // file offset to EncodedArray