Group files with the same destination for better look
Complete addons file handler
Use read_file and write_file from file_helper
Copy files: make dir if not existed and not overwrite existed files
Delete files: also delete all empty directories