Split run_code*_and_set_string_to*() functions.

zeshy now provides "_by_subshell" and "_by_coprocess" variants of each such
function (e.g., :run_code_and_set_string_to_stdout_by_subshell(),
:run_code_and_set_string_to_stdout_by_coprocess()), permitting callers to
explicitly select the varaint that best meets their needs. In most cases, due to
reliability *AND* efficiency constraints, this will not be the coprocess variant.