blob: create from chunks

This allows creating a blob from a streaming source.
The reader code is from nokogiri's ext/nokogiri/xml_io.c

The read callback can be called quite often for larger files
so read id is cached
blob: add binary.binary?
blob: .create -> .from_buffer for consistency
cover: exclude git_blob_id, git_blob_owner