base: Use common interface for Pool and BumpPool (guest)

Both classes use the same alloc() interface to allocate new
memory regions. We unified them under a new |Allocator|
interface so that generated code (deepcopy, etc.) could use
any Allocator instead.

host-side CL: If11b7bb79

Change-Id: I711b65090676d073c2a35dfcd5e17d741941a755
diff --git a/BUILD.gn b/BUILD.gn
index a9564fe..3baac16 100644
--- a/BUILD.gn
+++ b/BUILD.gn
@@ -2,8 +2,10 @@
   sources = [
     "android-emu/android/base/AlignedBuf.cpp",
     "android-emu/android/base/AlignedBuf.h",
+    "android-emu/android/base/Allocator.h",
     "android-emu/android/base/AndroidSubAllocator.cpp",
     "android-emu/android/base/AndroidSubAllocator.h",
+    "android-emu/android/base/BumpPool.h",
     "android-emu/android/base/Pool.cpp",
     "android-emu/android/base/Pool.h",
     "android-emu/android/base/Tracing.cpp",