Capture subshell output and return it.

The previous version of the subshell integration spec wasn't catching the
fact that the subshell output went directly to stdout, instead of being
returned to the parent command and used as an argument.
Support subshells embedded in double-quoted strings.