fixed #4 - keep backups private (0700)
fixed #3 - write backup to hidden file and rename it at the end to keep old backups in case of error