also, http/s compatibility falls off in the long tail of functionality. i've seen cache layers fail to properly implement restartable http.
that said, making long transfers actually restartable, robust and reliable is a lot more work than is presented here.