Shutdown and Initialize provider functions must accept a context.More specifically, new versions of them should accept a context.Context and return an error, while keeping the old versions so as not to create a breaking change for providers.
The global API Shutdown function should also accept a context, which is passed to the new provider Shutdown functions mentioned above. This change is breaking; there will be no context-less Shutdown variant on the global API object.