symlink-safe cleanup