compos: mount BuildManifestSystemExt.apk if exists

To specify the extra APK, we have to add two new VM config JSONs because
the APK may not exist, and there is no way to specify the config
dynamically.

Change VmParameters in order to derive the config path from two
variables at a more consistent place. As a result, there's no more
"default" config.

Bug: 246000387
Test: 1. manually add a jar from system_ext to SYSTEMSERVERCLASSPATH
      2. boot the VM, saw 2 directories in /mnt/extra-apk/
      (and with more local WIP changes, ComposHostTestCases passed)
Change-Id: I8aac49e0b347560fb65d8a8330e4333a29d90433
diff --git a/compos/composd/src/instance_manager.rs b/compos/composd/src/instance_manager.rs
index 451222e..c3d6592 100644
--- a/compos/composd/src/instance_manager.rs
+++ b/compos/composd/src/instance_manager.rs
@@ -22,10 +22,7 @@
 use anyhow::{bail, Result};
 use binder::Strong;
 use compos_common::compos_client::VmParameters;
-use compos_common::{
-    CURRENT_INSTANCE_DIR, DEX2OAT_THREADS_PROP_NAME, PREFER_STAGED_VM_CONFIG_PATH,
-    TEST_INSTANCE_DIR,
-};
+use compos_common::{CURRENT_INSTANCE_DIR, DEX2OAT_THREADS_PROP_NAME, TEST_INSTANCE_DIR};
 use rustutils::system_properties;
 use std::num::NonZeroU32;
 use std::str::FromStr;
@@ -47,16 +44,14 @@
 
     pub fn start_current_instance(&self) -> Result<CompOsInstance> {
         let mut vm_parameters = new_vm_parameters()?;
-        vm_parameters.config_path = Some(PREFER_STAGED_VM_CONFIG_PATH.to_owned());
+        vm_parameters.prefer_staged = true;
         self.start_instance(CURRENT_INSTANCE_DIR, vm_parameters)
     }
 
     pub fn start_test_instance(&self, prefer_staged: bool) -> Result<CompOsInstance> {
         let mut vm_parameters = new_vm_parameters()?;
         vm_parameters.debug_mode = true;
-        if prefer_staged {
-            vm_parameters.config_path = Some(PREFER_STAGED_VM_CONFIG_PATH.to_owned());
-        }
+        vm_parameters.prefer_staged = prefer_staged;
         self.start_instance(TEST_INSTANCE_DIR, vm_parameters)
     }