widgets.archive: remove executable bit

Signed-off-by: David Aguilar <davvid@gmail.com>
core: properly support Python3 on Windows

Python always goes through list2cmdline() on Windows.
This is fine on Python2, but it breaks Python3 because
it expects str, not bytes.

Ensure that Popen() always sees unicode strings by
decoding all inputs when running commands.

Closes #246

Reported-by: @shipownik via github.com
Signed-off-by: David Aguilar <davvid@gmail.com>