child_process: (Issue #7456) spawn() does not throw TypeError

Fixes issue #7456, Ensures TypeError is thrown, fixes a bug where `env` option was assuming the option was actually an object.

```
make jslint test
PYTHONPATH=tools/closure_linter/ /usr/bin/python tools/closure_linter/closure_linter/gjslint.py --unix_mode --strict --nojsdoc -r lib/ -r src/ --exclude_files lib/punycode.js
Skipping 1 file(s).
40 files checked, no errors found.
```