pub fn get_cache_directory<T: AsRef<Path>>(
    input: &str,
    basedir: T
) -> Result<PathBuf, Error>