[rialto] Add communication protocol library for host and rialto

This cl adds a communication protocol library that includes
Request and Response definitions for communication between the
host and rialto. The Request and Response messages are
(de)serialized in CBOR format and exchanged via vsock, enabling
the handling of partial packets.

In addition, an end-to-end test has been included to cover this
functionality. The test verifies the following steps that
correspond to the intended usage of the library:

- The host sends a Request to rialto serialized in CBOR.
- rialto deserializes the Request, executes it, and prepares a
Response.
- rialto sends the Response to the host serialized in CBOR.
- The host deserializes the Response.

Bug: 291732060
Test: atest rialto_test
Change-Id: I5f6412949e34b2431d060703e6dea1b96c92fde5
diff --git a/rialto/Android.bp b/rialto/Android.bp
index 7ac7136..33c24eb 100644
--- a/rialto/Android.bp
+++ b/rialto/Android.bp
@@ -9,10 +9,13 @@
     defaults: ["vmbase_ffi_defaults"],
     rustlibs: [
         "libaarch64_paging",
+        "libciborium_io_nostd",
+        "libciborium_nostd",
         "libhyp",
         "libfdtpci",
         "liblibfdt",
         "liblog_rust_nostd",
+        "libservice_vm_comm_nostd",
         "libvirtio_drivers",
         "libvmbase",
     ],
@@ -98,9 +101,11 @@
         "android.system.virtualizationservice-rust",
         "libandroid_logger",
         "libanyhow",
+        "libciborium",
         "liblibc",
         "liblog_rust",
         "libnix",
+        "libservice_vm_comm",
         "libvmclient",
         "libvsock",
     ],