Fix bake & other shells exiting incorrectly.

If a shell command method returns `null`, we should treat the command as successful. Only when a shell returns `false` should we exit non-zero.

Refs #5063
I will fix it tonight.