Do not use STARTUPINFO if not available (os != win).
Popen except a simple list.
Expand ~ in paths.
Fix expanduser to use os.path.expanduser