Azure Blob Storage Client Library for Go

This contains set of commits to implement a blob storage client. This is mainly required for Azure Storage Driver for [docker/docker-registry](https://github.com/docker/docker-registry/tree/next-generation)'s new implementation.

Mostly the parts that would be required to the driver are implemented. Therefore some of the parts are not implemented yet. These are:
* Blob/container leases
* Operations on Page Blobs
* Snapshot blob
* Abort blob copy
* Set/Get blob/container metadata
* Set/Get container ACL
* Get/Set blob service properties
* Get Blob Service Stats

On the other hand most of the basic functionality and Block Blob methods are provided within the library. The storage service authentication code is inherited from `packer-azure` repo and I wrote unit tests around those to verify their functionality. `packer-azure` should start using this. (cc: @paulmey)

This package has no dependency to the rest of the repo at all. I could not find any reusable parts. Would be good if we can take this in as soon as possible. Once merged, feel free to list me as a maintainer for this package, I'd happily code-review.

Ideally we should not be breaking this package since all distributions of docker-registry will take a dependency on this package soon. If you guys are planning to set up a CI, I configured unit tests to work with an Azure storage account name/key passed through env. It tests the blob operations on a real storage account.

cc: @jeffmendoza @johngossman