fix: missing config file shouldn't cause a LibrepoExeption-triggered traceback.
New version: 0.4.4
build: 0.4.4-1
refactor: move dnf.yum.base.Base to dnf.base.Base
refactor: call YumOutput just Output.
remove: Output.printtime and Output.simpleProgressBar.
rename: YumBaseCli -> BaseCli.
Don't confuse users when file already exists

Already downladed files were handled correctly, but since
msg != None, a confusing [FAILED] prefix was displayed.
Get rid of that, show [SKIPPED] instead.
refactor: _handle_new_remote(), _handle_new_pkg_download()

Want a single code path in the Repo class where remote
librepo handles are being created.

Removes 3 functions but no semantic changes. Fixes a subtle bug
that _handle_new_pkg_download() used only baseurl[0].
enhancement: use proxy settings
enhancement: LRO_FASTESTMIRROR

We should enable FASTESTMIRROR earlier so not only packages but
also metadata use the sorted mirror list.  Also, turn it off when:

- we're reusing mirrorlist (mirror_setup=False)
- repo uses baseurls (keep the user supplied order)
Add repo.get_handle() returning a cached librepo handle
remove: repo.urlgrabber_opts()

Make urlopen() use repo instead, so stuff as proxy
setting is honored properly in _retrievePublicKey().
py3: don't want float results here
fix: missing config file shouldn't cause a LibrepoExeption-triggered traceback.
added methods to PycompDict to fully imitate py2 dict
expired repos are saved in json instead of shelve
Python 3 full support added