Bugfix, doc changes, code clean up

Move constant data to top of file. Nuke remaining commitLink references.
Make get_branches private. Update various comments and docs
Add some repokill tests
Adding tests for branches command
Let repokill remove local clone
Clean up Git.__init__ and rehash

No point trying to handle missing config items gently - they are defined
in code, and if missing it's a coding error (as opposed to user missing
an entry in the git.ini file)
Add a _Scheduler class
Use the new Scheduler class
Get rid of super() and __parent madness
Sanitize some config items
Clean up some imports
Refactor options handling

Move all registration, also dynamic, to config.py.  Interface
changes, notably in _Repos.
config.py: pep8 fixes, remove logging
plugin.py: Don't pass log objects around
Move _RepoOptions into Repository

No need to have oit separate after log/plugin/git cleanup.
Drop @rehash in favor of @reload git.

+ pep8 fixes
killrepo: refactor pescy details to _Repos and config.py
Refactor git clone() so it's done when required
Run git clone in separate thread
Clean up callback mgmt
pep8 fixes