Snapshot/Restore: Write Snapshots directly to the blobstore stream

Today we serialize the snashot metadata to a byte array and then copy
the byte array to a stream. Instead this commit moves the serialization
directly to the target stream without the intermediate representation.