-fixes infinite loop where client keeps trying to send failing blobs, which may be failing because they are invalid
-return list of reflected blob hashes from BlobReflectorClient
-add {‘sd_blob_hash’: …, ‘sd_blob_size ‘: …} query type with
{‘send_sd_blob’: True/False, ‘needed_blobs’: []} response
this allows the reflector client to know how much of a stream reflector
already has covered, as to minimize the number of subsequent requests
and prevent streams from being partially reflected
-remove empty {} request