Add deleteContainerIfEmpty to BlobStore

This matches how most blobstores operate: delete container is a single
operation, not a compound operation which recursively deletes blobs.
I investigated other providers and it turns out that Azure *supports* a compound delete container and all blobs operation.  Thus we should retain `deleteContainer` and add new tests instead of modifying the existing ones.