Reduce overhead when fetching branch name for bzr

Since the move to threaded vcs segments, repo.branch() is called very
often, currently every 0.2 seconds. This leads to lots of overhead, as
it means that every 0.2 seconds the Branch object has to be created, and
the various config files read and parsed, just to get the branch name.
And all this happens in python while holding the GIL.

Changed that to simply extract the branch name from the relevant config
file directly. If in the future you decide to merge my file_watcher.py
module into powerline, I can refactor this to remove even that overhead
by watching the relevant config file. I suggest doing something similar
for the git and mercurial plugins as well, but that is upto whoever
maintains them.