Do not replace ascii with UTF-8 in powerline-daemon and python client

Assuming ascii was expected to be used when LANG=C it did not work in any case:
in this case preferred encoding is “ANSI_X3.4-1968”. Same for
`sys.getfilesystemencoding()`.
A few style improvements in Python client
Use posix.environ in Python client if available

This way there will be no need in converting keys and values to bytes objects on
\*nix systems.
Use the same function for getting encoding in Python client and daemon
Make powerline-render respect user locale as well

Closes #1023
Add `use_non_breaking_spaces` theme option, use it in ascii theme
Replace .replace(' ', NBSP) call with self.escape call

Dividers need to be escaped as well.

Fixes #1027
Fall back to ASCII-only theme in case of non-unicode locale
Separate some issues into “Vim issues” section in troubleshooting
Also add “Shell issues” section
Move LANG setting to run function, remove useless BINDFILE variable
Add another answer to troubleshooting section
Use &encoding as powerline encoding in Vim

Among other benefits (i.e. correct fall back to ascii theme when Vim uses
non-unicode encoding) this should also fix travis tests: apparently travis is
not setting LANG or similar environment variables to some unicode locale, so
tests are failing.
Merge pull request #1030 from ZyX-I/locale-support

Improve locales support