Add a shell command run condition for each job

This adds the ability to execute a shell script to determine if a job in a MultiJob phase should run.

For example, say you have a MultiJob phase with jobs alpha, bravo, and charlie.  Based on a build parameter, you do not want to execute the bravo job sometimes.  Before this change, this was really hard to do.
You'd either need to do some fancy job setup with the run-condition plugin (two conditional phases, one with bravo and one without).  Or you'd have to call bravo regardless and have it stop itself before running.

With this change, you can control whether a job runs with a simple command script.  If the script exits with a non-zero exit status, the job is skipped.  For example:

Run condition command:
```sh
#!/bin/bash -e
[ "$RUN_BRAVO" = "true" ]
```

Because this is a shell command, the possibilities are endless.  You can perform boolean logic on several build variables, read a file on the filesystem, etc.