improve logging and dry run detection
change directory backup behavior

Any files inside the directory will be moved to a temporary directory, then
moved back in when the symbolic link is created.