RPC with interchangeable transport and serialization layer