Expose JSON parsing of an arbitrary ByteString

This is sometimes needed when the body of a request needs additional
processing, such as signature verification, before parsing the JSON
content.