Swapped the src/dst arguments around.
We no longer care about whether the src/dst directories exist, they'll be created.
Normalize symlink names.
Continue on error when copying files, instead of returning.
Defer the close on the output file.
Add the required imports to the directory.