[services][backup] PullBackup 4/5 - blob stored item
Summary:
Second part of transport-business logic separation (see parent diff description). This diff abstracts both BackupItem and LogItem as some objects stored in blob service that can be sent to the client as PullBackupResponse.
Each stored object must have holder. Also, such object knows how to construct a response, what metadata to include in it and what size it is.
This trait will be used in the next diff to create a generic blob-service-download stream and avoid lots of code duplication.
Depends on D6242
Test Plan: This trait is tested altogether with other diffs for this endpoint
Reviewers: tomek, varun, jon, michal
Reviewed By: tomek
Subscribers: ashoat, atul
Differential Revision: https://phab.comm.dev/D6243