In general, `net/context.Context` should be the first argument to
methods that may be on a request call chain. While some API methods had
context, many did not, making support inconsistent. Applications that
require full plumbing of context, such as those that rely on
cancellation for resource cleanup, would be incompatible with
inconsistent plumbing. The change takes a first pass at adding context
through the entire API.
Signed-off-by: Stephen J Day <stephen.day@docker.com>