overhaul system() and popen() to use vfork; fix various related bugs