Revert "Revert "libbinder_rs: Treat previously associated Binder as remote""

This reverts commit f6b9ad98ee61149f42b6ca0bf84068d4411a92f8.

Reason for revert: Includes fix for aidl_integration_test failure that prompted the initial revert

Original commit message:
libbinder_rs: Treat previously associated Binder as remote

A binder object may have already been associated by another module (e.g.
NDK code that created the object if it is local) and therefore already
have an NDK AIBinder_Class. In this case we still want to transact with
the object, but must treat it as remote if its class does not match the
class expected for a compatible Rust service.

Re-landing this change with the fix for aidl_integration_test failure
that prompted its reversion.

Bug: 167723746
Test: atest rustBinderTest binderRustNdkInteropTest

Change-Id: I9a848bcc4b8003a22ebe59c89a95be70ef6ee7ec
diff --git a/libs/binder/rust/src/proxy.rs b/libs/binder/rust/src/proxy.rs
index 5002fc6..485bb42 100644
--- a/libs/binder/rust/src/proxy.rs
+++ b/libs/binder/rust/src/proxy.rs
@@ -91,7 +91,7 @@
 
     /// Return the interface class of this binder object, if associated with
     /// one.
-    pub(crate) fn get_class(&mut self) -> Option<InterfaceClass> {
+    pub fn get_class(&mut self) -> Option<InterfaceClass> {
         unsafe {
             // Safety: `SpIBinder` guarantees that it always contains a valid
             // `AIBinder` pointer. `AIBinder_getClass` returns either a null