reposconf.py WIP: gives error messages more verbosity

Also naturalizes key check for overlay name
db.py: Incorporates RepoConfManager class
repoconfmanager.py WIP: Corrects function indentation

Also modifies logic behind require_repoconf checks
reposconf.py WIP: comments out _get_contents()

In favor of not having to essentially copy the overlay object to
another name, the _get_contents() function was removed. All changes
have been reflected to get only the necessary data from the overlay
object and all commented out code will be removed once given the
okay to do so.
config.py: Adds proxies() function

Since both remotedb.py and tar.py both made use of the same code
that determined available proxies, the code has been moved to a
function in config.py and both files have been changed to make use
of this function.
utils.py: adds verify_overlay_src() function
api.py: incorporates verify_overlay_src() function
api.py: adds readd_repos() function
api.py: Adds overlay type checking

Checks have been added to determine whether or not to readd a repo
if the overlay type reported from the remotedb is different from the
overlay type reported by the local db.
overlay.py: adds update() function

To update local database and overlay source urls, this function
has been created to allow the overlay.type functions to update
their source urls in their own methods.
overlay.py: corrects first_src boolean check
git.py: moves fix_git_source() function

This function will also be used by the git update() function
that will be added.
git.py: adds update() function

This function will call git remote set-url, replacing the old url
with the new provided by overlay.update().
overlay.py: removes indexing of sources object in update()
db.py: adds update() function
api.py: incorporates db.update() in api.sync()