golang file sync service use rsync like algorithm