replace optparser by argparser because optparser is deprecated
add function "dir_clean" for remove empty directories from the destination directory
add optional argument "--recursive" to sort all dirs in the source directory recursively
add message formating by using format() function