Separates Send() methods for metadata and data/stream Requests Metadata-only requests should use "void Send()" as before Data/Stream requests should use new "DataFuture SendAsync()" and then call wait() on the returned object to garbage collect the request after the data/stream part has completed.