Fix Windows console issues

Avoid setting background values of over 128 in the Windows console.

Closes #74.
Fix Fugitive statusline segment not working with ignorecase on

With ignorecase on, the Fugitive statusline segment fails to turn the
[Git(...)] statusline into flags because vim's substitute does not take
the 'i' flag.

This commit fixes the Fugitive statusline flag regex to specify case
sensitivity in the pattern itself.

Closes #77.
Add RVM statusline

Closes #78.
Create virtualenv segment

Closes #68.
Update vim docs

* Added and updated some option descriptions
* Added information about basic customization
* Started docs on advanced customization

Refs #90.
Add current highlighting group segment

Refs #90.
Redraw after updating the statusline

This has previously caused some speed issues, but because it's only
triggered when entering/leaving a buffer (not on CursorHold and similar
autocmds) I hope it won't make the plugin any slower. Without redrawing
the statusline will be blank when opening some file types on some
configs, this commit solves that by forcing a redraw after Powerline is
loaded.
Update the README with more troubleshooting info

Closes #31, #48, #87, #92.
Create callback functionality

This commit introduces the possibility of accessing statuslines from
a callback function which may be used in cases where plugins have to
disable autocmds (e.g. Ctrl-P). The statuslines are cached in a separate
THEME_CALLBACKS array which contains the callback initialization string
and the callback function.

Refs #56.
Create Ctrl-P theme

Closes #56.
Simplify the pwd segment
Match tagbar buffers by filetype instead of buffer name
Fix vim doc errors
Create NERDTree statusline

Refs 38a7b18ed36e51377bbcf24e95d4b1f95c816989.
Closes #79.
Change some buffer statusline colors
Revert "Redraw after updating the statusline"

This reverts commit a846b2adb04abc248976724a53bdff0a7a89abba.

Unfortunately forcing a redraw still causes some issues (e.g. Gundo
flickers every time it's opened and other buffers feel a bit more
sluggish when opening and closing their windows).
Print error messages with echom instead of echoe

echoe caused vim to fail catastrophically if any errors occured while
loading an invalid theme. echom still logs the errors, but without
causing Powerline to crash vim.
Remove any attributes from segment separators

Thanks to @sjl for reporting this.

Closes #98.
Update color scheme syntax

The previous syntax was verbose and difficult to work with. This commit
tries to improve colorscheme creation by simplifying the syntax with the
cost of being easier to break and harder to debug if anything is wrong
in the color scheme.

The new syntax works as following:

First, you need to allocate some colors for your color scheme:

	call Pl#Hi#Allocate({
		\ 'red' : 124,
		\ 'blue': 31,
		\ })

Cterm colors must always be specified. GUI colors are optional. To add
GUI colors, provide a list as the color parameter with the GUI color as
its second element (note the hex notation):

	call Pl#Hi#Allocate({
		\ 'red' : [124, 0xff0000],
		\ 'blue': [31 , 0x0000ff],
		\ })

Now you can create styles for the different segments (example from the
distinguished color scheme):

	let g:Powerline#Colorschemes#distinguished#colorscheme = Pl#Colorscheme#Init([
		\ Pl#Hi#Segments(['mode_indicator'], {
			\ 'n': ['darkestgreen', 'brightgreen', ['bold']],
			\ 'i': ['darkestcyan', 'white', ['bold']],
			\ 'v': ['darkred', 'brightorange', ['bold']],
			\ 'r': ['white', 'brightred', ['bold']],
			\ 's': ['white', 'gray5', ['bold']],
			\ }),
		\ ])

Pl#Colorscheme#Init() accepts a list of segment highlighting properties
(return values from Pl#Hi#Segments()).

Pl#Hi#Segments([...], { ... }) accepts two parameters: a list of all the
segments that are going to be highlighted and a dict with the
highlighting for different modes. Currently 6 modes are available, with
both a shorthand and full key you can use (choose whatever you prefer):

	n | normal
	N | noncurrent
	i | insert
	v | visual
	r | replace
	s | select

The dict values are a list with the colors and attributes for this
segment/mode combination.

The first list element is always the foreground color. The second
element is an optional background color (it's optional for segment
group children--if it's not provided then the segment group's bg color
will be used). The last element in the list is a list of attributes. The
supported attributes are 'bold', 'italic' and 'underline'.

Note: It's important to include highlighting for all the segments in the
default distribution. Failing to include highlighting for used segments
will trigger error messages when starting vim.

Thanks to @sjl for giving me feedback about the new syntax.
Rename "distinguished" theme/colorscheme to "default"