AAPT2: Share split functionality between link and optimize

Generating splits should be possible to do from the optimize command.
This means that a lot of infrastructure around split APKs can be
shared by both the optimize and link phase.

Bug: 35925830
Change-Id: Ia88b9e4bff300a56353b2f7a4a2547c8eb43a299
Test: manual
diff --git a/tools/aapt2/Android.bp b/tools/aapt2/Android.bp
index ef3797c..b460258 100644
--- a/tools/aapt2/Android.bp
+++ b/tools/aapt2/Android.bp
@@ -15,11 +15,12 @@
 //
 
 toolSources = [
-    "compile/Compile.cpp",
-    "diff/Diff.cpp",
-    "dump/Dump.cpp",
-    "link/Link.cpp",
-    "optimize/Optimize.cpp",
+    "cmd/Compile.cpp",
+    "cmd/Diff.cpp",
+    "cmd/Dump.cpp",
+    "cmd/Link.cpp",
+    "cmd/Optimize.cpp",
+    "cmd/Util.cpp",
 ]
 
 cc_defaults {
@@ -90,7 +91,7 @@
         "io/BigBufferStreams.cpp",
         "io/File.cpp",
         "io/FileSystem.cpp",
-        "io/Io.cpp",
+        "io/Util.cpp",
         "io/ZipArchive.cpp",
         "link/AutoVersioner.cpp",
         "link/ManifestFixer.cpp",