Add cancellation reporting middleware
Closes #334 (closed)
We seem to get quite a few context cancellations in production but those requests error out with various 'internal' errors like 'Unavailable'. I think it would be more useful if cancellations got the GRPC code 'Canceled'.