Manage the underlying RawDexFile of a DexFile with a smart pointer.

Change-Id: I6586d34767584feaa746ffd819107ebbd036d8a3
diff --git a/src/dex_file.cc b/src/dex_file.cc
index 1331ac7..2b6500e 100644
--- a/src/dex_file.cc
+++ b/src/dex_file.cc
@@ -29,7 +29,6 @@
 }
 
 DexFile::~DexFile() {
-  delete raw_;
   delete[] strings_;
   delete[] classes_;
   delete[] methods_;
diff --git a/src/dex_file.h b/src/dex_file.h
index 51c0a5a..61add38 100644
--- a/src/dex_file.h
+++ b/src/dex_file.h
@@ -69,7 +69,7 @@
   size_t length_;
 
   // The underlying dex file.
-  RawDexFile* raw_;
+  scoped_ptr<RawDexFile> raw_;
 
   DISALLOW_COPY_AND_ASSIGN(DexFile);
 };