testsuite: check for expected exit codes from flux-start

Especially for testing purposes, flux-start exit code should
communicate failures from underlying commands or other session
errors.

Add a couple checks to the basic tests to ensure that flux-start
reports exit code from underlying command and additionally detects
children killed by signals.
flux-start: exit with maximum exit code of children

flux-start currently always exits with 0 status which makes it
impossible to tell if a test run under flux-start actually passed
or failed.

This patch saves the largest return code from all children and
uses that as the exit status for flux-start. (signals are indicated
by the standard 128 + signum). This only applies to "start_direct",
since otherwise flux-start directly execs the launcher (i.e. srun).
Merge pull request #91 from grondo/flux-start-error-handling

flux-start: handle non-zero exit code of children