extern(): act more like 'command' if external file not executable
extern(): act more like 'command' if external file not executable

bin/modernish:
- extern(): If an external file is found for the command but is not
  executable, remember the name/path and exit with an appropriate
  error message and exit status 126 (cannot execute) instead of 127
  (not found). This is more consistent with the behaviour of most
  shells when running external commands (with or without
  'command').

modernish/modernish