Fix error handling for rpc.remote (#39605)
Summary:
Pull Request resolved: https://github.com/pytorch/pytorch/pull/39605
1. `RRef.to_here()` could serialize a Python object into a message.
However, we did not catch the Python pickle error, which would
result in crash. This was exposed when calling `rpc.remote` with
a user function that returns `torch.futures.Future`.
2. `rpc.function.async_execution` could throw error on the server.
This commit sets the error on the OwnerRRef properly.
Test Plan: Imported from OSS
Differential Revision: D21913820
Pulled By: mrshenli
fbshipit-source-id: 50b620641a3b89d310b3b907570561decd83ee34