ART: Move `CompiledMethod{,-Storage}` to dex2oat/.

Introduce a `CompiledCodeStorage` interface for callbacks to
`dex2oat` for storing code produced by `libart-compiler`.
Using this new interface, move `CompiledMethodStorage`
(this is a misnomer as it's also storing non-method thunk
code), `CompiledMethod` and `SwapSpace` to dex2oat/.

Test: m test-art-host-gtest
Test: testrunner.py --host --optimizing --jit
Test: run-gtests.sh
Test: testrunner.py --target --optimizing
Change-Id: Icb7ffc134d00e53c25bd665d044dd1c98bd49a64
diff --git a/compiler/compiler.h b/compiler/compiler.h
index afa0dba..6115d02 100644
--- a/compiler/compiler.h
+++ b/compiler/compiler.h
@@ -38,8 +38,8 @@
 }  // namespace mirror
 
 class ArtMethod;
+class CompiledCodeStorage;
 class CompiledMethod;
-class CompiledMethodStorage;
 class CompilerOptions;
 class DexFile;
 template<class T> class Handle;
@@ -53,7 +53,7 @@
   };
 
   static Compiler* Create(const CompilerOptions& compiler_options,
-                          CompiledMethodStorage* storage,
+                          CompiledCodeStorage* storage,
                           Kind kind);
 
   virtual bool CanCompileMethod(uint32_t method_idx, const DexFile& dex_file) const = 0;
@@ -99,7 +99,7 @@
 
  protected:
   Compiler(const CompilerOptions& compiler_options,
-           CompiledMethodStorage* storage,
+           CompiledCodeStorage* storage,
            uint64_t warning) :
       compiler_options_(compiler_options),
       storage_(storage),
@@ -110,13 +110,13 @@
     return compiler_options_;
   }
 
-  CompiledMethodStorage* GetCompiledMethodStorage() const {
+  CompiledCodeStorage* GetCompiledCodeStorage() const {
     return storage_;
   }
 
  private:
   const CompilerOptions& compiler_options_;
-  CompiledMethodStorage* const storage_;
+  CompiledCodeStorage* const storage_;
   const uint64_t maximum_compilation_time_before_warning_;
 
   DISALLOW_COPY_AND_ASSIGN(Compiler);