add support for new ExposedTypesProvider to support advertising portable types to the marshalling. Implemented a version for RPC which records all parameter and return types from RPC methods