Added an example showing how to send/receive custom metadata, and handle
call cancellation.
Implemented the remaining parts of metadata and cancel handling.
Addresses part of #8 and #12.
Picks up fix for sending endStream bit on the requested frame, instead
of on an empty data frame following it.
Needed for interoperability with the Go gRPC client, since it otherwise
failed to recognize the trailer frame sent from the server.
Fixes#13.
What works:
* Client and server can talk to each other, all 4 RPC variants.
* Client can talk to Go gRPC server.
What (probably) doesn't work:
* Anything else.