pub fn execute(
    key: &String,
    paths: &Vec<PathBuf>,
    output_path: &Option<PathBuf>,
    overwrite: &bool,
    delete_original: &bool
) -> Result<(u32, Vec<(PathBuf, Error)>, Vec<(PathBuf, Error)>, Duration)>