loader: Fix rsync failures by retrying associated commands
Fetching CVS repository data using rsync often fails with the following error
(especially with archived repositories hosted on sourceforge):
rsync error: some files/attrs were not transferred (see previous errors) (code 23)
It seems the only way to mitigate that issue is to retry the rsync command
until it succeeds.
So add a rsync_retry decorator and apply it to a new method in the loader
wrapping the call to subprocess.run executing the rsync command.
Also use rsync option to compress file data during the transfer.