We should test conflicts (e.g. what if files in the destination already exist, are linked elsewhere etc.)
As mentioned in #16, this is blocked on #18 and would require us to find a way to handle currently interactive decisions in a scriptable manner. One way to achieve this would be to use a callback function for each kind of decision, e.g. in Options, and delegate these callbacks to confirm for the CLI.