Fix problem with unreachable remotes in |Emitter|.

Also improve behavior of the async Promise::SetValue().