child_process: add 'shell' option to .exec()

No test, we can't rely on an alternate shell being available.

Fixes #5935.
doc: vm: fix incorrect API documentation

On timeout, an Error object is thrown, not null.