WIP: Reworked config

Changes:

- Removed useless Segment and Matcher classes that were used solely for their .get() method.
- Added ability to specify some segment keys in top theme. Ref #3 (it is the problem I expressed in comment there: segments will be inconsistent in themes added by `add_local_theme`).
- Added ability to override configuration options (via vim variables or command-line keys). Ref #231.
- Reworked top-level Powerline class: moved a big bunch of capabilities out of it, moving them to child classes. Ref #141 (I think that calling matcher just to check strings for equality while we can use `__getitem__` is weird, thus making it possible to override `get_local_themes` in upcoming IpythonPowerline subclass. More changes are needed though to support #141).

More testing is needed, overrides should be added at least to ipython (to anything that may be launched in different terminals on one system. Ipython, vim, shells may. Awesome may not thus it does not need overrides). To make overrides more usable all non-ASCII symbols should be moved to `segment_data` key of the default theme.

WIP, DO NOT MERGE.