Add deleteContainerIfEmpty to BlobStore

This matches how most blobstores operate: delete container is a single
operation, not a compound operation which recursively deletes blobs.
Not a stupid question; this method has a confusing name and some duplicated wrappers.  The method should return return false if not empty and I added some Javadoc for this.  I can dike out some of the cruft in a subsequent commit.