v.io: fix places where context.T cancellation functions are not called.

context.T (like its standard Go namesake) requires that the cancellation
function returned by WithCancel() be called, of the context object will be
leaked.  The same is true of WithTimeout() to a lesser degree---one might
ignore the issue if the timeout is short.

This change fixed a number of places where we curently fail to call the
cancellation function.

Some are only on error paths that will be taken only rarely.

Some are on timeout cases, which we could ignore, but for the moment, I'm
trying to be thorough, primarily because existing code acts as a template for
future code, and it seems better to encourage good habits.

In a couple of cases, the existing code is correct, but I added a comment to
explain that a call is not needed.

MultiPart: 1/2
Change-Id: Ic5b074549e33472d1cdd8929a864fd020a9b2890
3 files changed