loader: Add support for dumb HTTP transfer protocol
Git supports two HTTP based transfer protocols to exchange data
between two repositories: the dumb protocol and the smart protocol.
Nowadays, the smart protocol is a common method of transferring
data because it is more efficient but there is still some git
servers in the wild that only support the dumb protocol.
Unfortunately the dulwich package does not support such protocol
so this kind of git repository could not be loaded into the archive.
That commit adds support to load such git repository by fetching
objects according to the dumb HTTP transfer protocol specification.
Related to T2489