Standard file-wise implementation for merging multiple sets of files.
If there are any duplicate file paths with differing file contents, an exception will be thrown.