Large object space

The large object space helps prevent fragmentation by putting large objects in mem maps insead of the alloc space.

Instead of mark and live bitmaps it uses mark and live sets.

Change-Id: Iada5db70b88a1572007d8af921fa353681a55dc7
diff --git a/src/class_linker.cc b/src/class_linker.cc
index 26af575..1c87747 100644
--- a/src/class_linker.cc
+++ b/src/class_linker.cc
@@ -979,11 +979,7 @@
   {
     ReaderMutexLock mu(*Locks::heap_bitmap_lock_);
     heap->FlushAllocStack();
-    const Spaces& vec = heap->GetSpaces();
-    // TODO: C++0x auto
-    for (Spaces::const_iterator it = vec.begin(); it != vec.end(); ++it) {
-      (*it)->GetLiveBitmap()->Walk(InitFromImageCallback, this);
-    }
+    heap->GetLiveBitmap()->Walk(InitFromImageCallback, this);
   }
 
   // reinit class_roots_