JCLOUDS-567: Upgrade Apache HttpClient to 4.3.4
Remove ByteSources.asByteSource

This method breaks the contract of ByteSource which specifies that
openStream can produce multiple independent streams.
Add deleteContainerIfEmpty to BlobStore

This matches how most blobstores operate: delete container is a single
operation, not a compound operation which recursively deletes blobs.
Azure is the only provider which allows deleting a non-empty
container.