Start using arg vectors for stap_system and friends
Instead of worrying about quoting properly in every command string, we
can rest easier by launching processes with a proper argv[]. All of the
stap_system-like functions are converted, but a flat-string stap_system
is also kept around for now while callers are converted.
* util.cxx (stap_spawn): Take a vector<string> for command arguments,
convert that to an argv[], and use that for posix_spawnp. Note the
conversion to spawnp as well so PATH-searching is still performed.
(stap_system, stap_system_read): Convert to vectors, but keep a flat
version of the former for compatibility.
(probe stap_system__start): Move to stap_spawn, to probe all flavors.
(probe stap_system__complete): Likewise, move to stap_waitpid, to
probe when any process is finished; add a pid to track who's done.
* remote.cxx (direct, ssh_remote): Convert all calls to vector form.