Backport PR #4849: Various unicode fixes (mostly on Windows)

There were warnings on startup of IPython, and the qtconsole and notebook could not be started at all if the user's home directory is unicode.

Changes:

- add `prefer_stream=True` flag to utils.encoding.getdefaultencoding, since the right answer is different for stream output and other things.
- always encode args to Popen on Windows Python 2
- never add unicode to sys.path on Python 2

These should be backported for 1.2, and it would be great if some unicode-locale Windows users (@jstenar) could double check the sanity of the changes.