Abort if one of the target destinations has no source files

Also updated the other error message to more verbose (emphasise
difference between destination files and source files).

Fixes #57
Merge pull request #58 from Krinkle/issue/57

Abort if one of the target destinations has no source files