Mark patch 427 as included. (#1357)
Merge pull request #1361 from splinterofchaos/silent-system

Mark patch 427 as included.
unittest: fix handling of pragma pack in `cimport`
unittest: increase number of retries in cimport
Merge pull request #1349 from stefan991/fix-cimport-pragma-pack

Fix handling of `#pragma pack` in `cimport` lua helper
Fix python setup: Report errors.

No error indication was being given if something went wrong while
setting up python.
Fix python setup: Make sure python version on user's path is picked.

Problem:  executable() was detecting python on user's path, but
          system() was executing system-level python.

Solution: Make sure python version on user's path is executed.
          Use exepath() to force system() to do so.
Merge PR #1358 'Fix python setup'
job: Close libuv handles when uv_spawn fails

Commit @709685b4612f4 removed the close_job_* calls when uv_spawn fails because
of memory errors when trying to cleanup unitialized {R,W}Stream instances, but
the uv_pipe_t instances must be closed because they are added to the event loop
queue by previous `uv_pipe_init()` calls
job: Let job_start callers to selectively ignore stdio

Passing NULL as the callback for stdout/stderr will result in job_start ignoring
stdout/stderr, respectively. A 'writable' boolean argument was also added, and
when false `job_start` will ignore stdin.

Also, refactor os_system to allow passing NULL as the `output` argument.
shell: Rename dyn_buffer_t to DynamicBuffer

To follow our coding conventions
rstream: Add rstream_buffer method to get a reference to RBuffer
job/shell: Refactor os_call_shell/os_system to share code
job: Refactor how job kill timeouts are handled

Use a timer to periodically compare the current HR time against the HR time of
when `job_stop` was called. After 1 second, send SIGTERM, after 2 seconds, send
SIGKILL. The timer is only active when there's at least one `job_stop` call
pending.
job: Fix job_wait to properly cleanup the job when it exits.