StorageDaemonClient support for HttpDestination & propagating ingestion id
StorageDaemonClient support for HttpDestination & propagating ingestion id

Summary:
This diff enables the client to use ManifestV2 & flasharray-based data. It does this by switching to use the HttpUploader/DataDestination instead of the previous custom client code when the ManifestV2 is used (since that manifest contains locations).

In order to use the DataDestination APIs, we need one additional piece of info to be passed through--the ingestion id.

Finally, downloading bundles is factored out so that ManifestV2 bundles can take the new code path while leaving the existing code path intact.

This does not add new functionality yet--it only lays the groundwork.

Reviewed By: mackorone

Differential Revision: D36548104

fbshipit-source-id: 90b014b678c71424966d7e5fdc87c309932e57cb

facebook/fbthrift,facebook/fbthrift,facebook/fbthrift,facebook/fbthrift,facebook/fbthrift,facebook/fbthrift,facebook/fbthrift,facebook/fbthrift,facebook/fbthrift