Support progress on stderr while piping stdout

Render has a guard clause for process.stdout.isTTY, which makes it impossible to pipe stdout while rendering progress bar on stderr. This PR makes the progress bar quiet based on the TTY of the configured output stream.

It also adds a quiet option to override the behaviour. This also allows for easy integration in scripts which have its own quiet flag.


The progress bar will be quiet by default if configured with a WriteStream which doesn't support TTY. If that's a real use case then it can always be fixed with a "quiet: false".

On another note, the output stream should IMHO default to stderr instead of stdout, like curl. But it's simple enough for the developer to switch.