Adding a ResumableDownload class to allow resuming a partial download