Handle errors in git-watcher

It will now trigger an error on git branch -r fails, and those failures
will trigger a reclone of the repo. This fixes broken clones, and maybe
some other as well
Fake repos from config

If the config repos.inc is set, we will only use those 4 repos, and
never call github. Good for test-setups, where you don't want hundreds
of repos :)
Make more stuff respect logging config
Ignore some stuff when forever runs
Make repo model available in webserver
Make Repo.repull callable with callback

This enables us to call it from the web server as well.
Refactor some response helpers in web server

This makes the code a bit cleaner in each handler, where you can now
just call the helpers on self to respond with JSON
Add commitlag handler, taking a repo and branch

This will first repull the repo, and then run git describe to find
number of commits since last tag, and what that tag was.

The intention is to call this from marvin, so we longer repull all repos
all the time, but only on events from marvin.
Change from repull to rescan of repos.
Make sure we actually scan in the rescan :P
Redundant logging
Improve logging