* [builder/azure-arm] Use VM/build location for image locationThe builder was using the location of the containing resource group asthe image location, but the API call can only create images in the samelocation as the source VM that is being captured.
Run now takes a context as well as a statebag. We'll assign the context
to the blank identifier to prevent namespace collisions. We'll let the
step authors opt-in to using the context.
`find . -iname "step_*.go" -exec gsed -i'' 's/func \(.*\)Run(/func \1Run(_ context.Context, /' {} \;`
The OAuth code was moved to the adal package.
Authorizers now ues an interface instead of a simple token.
Long running operations return a channel for the operation, and the
error.
This is last merge that will happen from the github.com/Azure/packer-Azure
repository. All development is being over to this repository.
The biggest change in this merge is support for Windows. There are a few other
fixes as well.
* If the user cancels the build, clean up any resources.
* Output a reasonable build artifact.
* Log requests and responses with Azure.
* Support for US Government and the China clouds.
* Support interrupting long running tasks.
* Allow the user to set the image version.
* Device login support.