Add .local.vimrc with configuration for the lint checker

Ref #314
Add tools/generate_gradients.py and tools/colors_find.py

First helps in generating gradients. Usage:

    python tools/generate_gradients.py '[color1, …]' itemnum[ "show"]
where color is either [100, 127, 46] (cterm colors) or ["ff00ff", "feffef"] (RGB
colors)

Second is to determine what name will be better suitable for some RGB color
Refactor powerline.lib.url
Make file_size segment output buffer size
Add support for .startup and .shutdown methods
Use proper clock if possible
Make psutil.BOOT_TIME fallback for /proc/uptime

Method used with psutil.BOOT_TIME is subject to changes when clock_settime
changes time, /proc/uptime is not.
Use psutil module for `user` segment
Do not import memoize, humanize_bytes and urllib_* in powerline.lib
Replace memoize with threading where applicable

NOTE: Documentation now gets attached to *classes*, not actual segments. Hiding
      away classes (by changing their names to start with `_`) and/or doing

          self.__doc__ = self.__class__.__doc__

      does not work (hiding classes only hides documentation completely). I am
      not familiar with sphinx enough to say how this should be fixed.

Ref #168
Some fixes for flake8
Avoid using python setup.py test

Closes #295
Avoid ResourceWarning messages: close stdout
Change uptime format, make it accept seconds if needed

It is uncommon to use integers like 00 or 01 for days.
Add format keyword argument to network_load segment
Add temperature_format keyword argument to weather segment
Test all other segments

Still uncovered: email_imap_alert and now_playing
Fix shorten_cwd handling
Fix documentation for threaded segments
Fix documentation for wrapped functions