Enhancement: Stream data in check and prune commands

`check --read-data` and `prune` downloaded data files into temporary files
which can end up being written to disk. This could cause a large amount of data
being written to disk. The pack files are now streamed which no longer needs
temporary files. Please note that uploads during `backup` and `prune` still
require temporary files.

https://github.com/restic/restic/pull/3484
https://github.com/restic/restic/issues/3710
https://github.com/restic/restic/pull/3717
