Add progress indicators on long downloads

@teobugslayer @tailsu 
instead of `any`, declare the expected interface `IProgressStreamOptions`, `IProgressReport`