Calculate Content-MD5 when writing blobs

Blobstore which enforce MD5 can protect against a class of IO errors.
String and URL payloads use a ByteArrayPayload which calculates MD5
implicitly.
Merge pull request #87 from maginatics/calculate-md5

Calculate Content-MD5 when writing blobs