microdroid_manager logs Err from main()

plus a few more logs.

Bug: n/a
Test: MicrodroidHostTestCases
Change-Id: I848205a356d02f76112df2831a184ef59fe69e67
diff --git a/microdroid_manager/src/main.rs b/microdroid_manager/src/main.rs
index 4953a4c..9c1792d 100644
--- a/microdroid_manager/src/main.rs
+++ b/microdroid_manager/src/main.rs
@@ -88,13 +88,20 @@
     Ok(ret)
 }
 
-fn main() -> Result<()> {
+fn main() {
+    if let Err(e) = try_main() {
+        error!("failed with {}", e);
+        std::process::exit(1);
+    }
+}
+
+fn try_main() -> Result<()> {
     kernlog::init()?;
     info!("started.");
 
-    let metadata = load_metadata()?;
+    let metadata = load_metadata().context("Failed to load payload metadata")?;
 
-    let mut instance = InstanceDisk::new()?;
+    let mut instance = InstanceDisk::new().context("Failed to load instance.img")?;
     let saved_data = instance.read_microdroid_data().context("Failed to read identity data")?;
 
     // Verify the payload before using it.