Create composite disk image in VirtualizationService.

This is simpler than spawning mk_cdisk, and will also be useful for
making the payload image.

Bug: 190503456
Test: Ran microdroid, compared log output
Change-Id: Id67d6280696c4221b675eec99c65ea44e1c549ab
diff --git a/virtualizationservice/Android.bp b/virtualizationservice/Android.bp
index f5ad1f8..700d0fc 100644
--- a/virtualizationservice/Android.bp
+++ b/virtualizationservice/Android.bp
@@ -2,8 +2,8 @@
     default_applicable_licenses: ["Android-Apache-2.0"],
 }
 
-rust_binary {
-    name: "virtualizationservice",
+rust_defaults {
+    name: "virtualizationservice_defaults",
     crate_name: "virtualizationservice",
     srcs: ["src/main.rs"],
     edition: "2018",
@@ -24,12 +24,26 @@
         "libandroid_logger",
         "libanyhow",
         "libcommand_fds",
-        "libcompositediskconfig",
+        "libcrc32fast",
         "libdisk",
         "liblog_rust",
+        "libprotobuf",
+        "libprotos",
         "libserde_json",
         "libserde",
         "libshared_child",
+        "libuuid",
     ],
+}
+
+rust_binary {
+    name: "virtualizationservice",
+    defaults: ["virtualizationservice_defaults"],
     apex_available: ["com.android.virt"],
 }
+
+rust_test {
+    name: "virtualizationservice_device_test",
+    defaults: ["virtualizationservice_defaults"],
+    test_suites: ["general-tests"],
+}