Refactored extension actions with caching

clear stale action output/error before calling run()
download file copying now moved to actions.py set_download_file()
actions logging uses per-module logger (for suppression in doctests)
docstring enhancements
refactor URL query string, cache key, and export path computation
set_download_file() and get_download() do caching (per path_obj)
get_link_func() will return link to cached download export if available
run() method gets path_obj for set_download_file() caching key/mtime
hello and moztarball adaptations for refactored API