reposconf.py WIP: adds read() function

To read the ConfigParser file in /etc/repos.conf/layman.conf
the read(), and _read_file() functions have been added.
reposconf.py WIP: adds write() function
reposconf.py WIP: adds add() function
reposconf.py WIP: adds delete() function
reposconf.py WIP: adds update() function
makeconf.py: changes name to ConfigHandler, adds update() stub

For compatibility with RepoConfManager, the MakeConf class has been
renamed to ConfigHandler as well as adding an update() function as
a stub for when RepoConfManager calls it.
config.py: Adds auto_sync, conf_type, and require_repoconfig

Three new options have been added to give users repo config
configurability.
repoconfmanager.py WIP: Creates initial RepoConfManager class

This class will provide a wrapper for all config types and will
also allow for custom config plugins as well.
repoconfigmanager.py WIP: adds conf_type checks

Checks are made to assure conf_types exists and is in the correct
format that RepoConfManager expects it to be.
repoconfmanager.py WIP: adds add() function

By checking the conf_types and associating them with a dict has each
key as the conf_type and the value is a tuple of the corresponding
class and string of the module name.
repoconfmanager.py WIP: adds delete() function
repoconfmanager.py WIP: adds update() function

Also corrects function indentation and logic to check
for the require_repoconf variable.
db.py: Incorporates RepoConfManager class
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 the verify_overlay_src() 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.
git.py: adds update() function

Moves the fix_git_source() function to allow both add() and update()
to make use of it. While the update() function calls git remote
set-url, replacing the old url with the new url provided by
overlay.update().
db.py: adds update() function
api.py: incorporates db.update() in api.sync()