Handle syscall-stop, exec-stop and group-stop.

-- syscall-stop --

We now unconditionally set the ptrace option PTRACE_O_TRACESYSGOOD. This
simplifies detection of a syscall-stop. Support for this was added in 2.4.6.

-- exec-stop --

exec-stop is introduced in Linux 2.5.46 and is turned on use ptrace option
PTRACE_O_TRACEEXEC. Using this option turns off the redundant third SIGTRAP for
execve. Requiring this option sets a hard dependency in Parrot for 2.5.46+
kernels.

We still do not handle the case where a thread which is *not* the thread-leader
(i.e. thread ID == thread group ID == process ID). How it should work is
documented pretty well in the ptrace man page but looks complicated to support.

-- group-stop --

This branch uses PTRACE_SEIZE (for Linux 3.4.0+) to enable handling group-stop.

When a thread enters group-stop, we move it to the new PFS_PROCESS_STOP_STATE.
It is necessary to distinguish this from PFS_PROCESS_USER_STATE because a
parent calling wait with WUNTRACED only gets the stopped child *if it is still
stopped*:

    WUNTRACED   The  status  of  any  child  processes  specified  by pid that
                are stopped, and whose status has not yet been reported since
                they stopped, shall also be reported to the requesting process.

compare to WCONTINUED:

    WCONTINUED  The  waitpid()  function  shall  report the status of any
                continued child process specified by pid whose status has not
                been reported since it continued from a job control stop.

so, a process which has received SIGCONT will notify the parent no matter what
its current state is.

In addition to handling group-stop, we also correctly notify parents if the
child has been continued.

Fixes #330.

Maybe addresses #270.
Avoid spurious warnings when building on cygwin.
add newline and adjust space problem for parrot_package_* docs
Doc fixes.

* ccl/pull/486/head:
  add newline and adjust space problem for parrot_package_* docs
Fixed improper busy-waiting in work_queue_worker, due to missed conversion from msec to usec.
Merge pull request #487 from dthain/master

Fix Busy Waiting in Worker
Exit successfully for --help.

This is useful for Autobuild checking the presence of options without
side-effects.

./configure --debug --help --> 0
./configure --foo --help --> 1
ensure parrot_package_run support any command
ensure chroot_package_run support any command
modify doc for chroot_package_run and parrot_package_run
let both of them can run any preserved command directly
Merge branch 'parrot-stop-state' of github.com:batrick/cctools into batrick-parrot-stop-state

Conflicts:
	parrot/src/pfs_main.cc
	parrot/src/pfs_process.h
Add missing <p> tags.
Merge pull request #493 from hmeng-19/parrot_package_run

Parrot Package: Run Any Command
change spell error of chroot_package_run doc
Give group-stop warning only if it happens.
change spell error of chroot_package_run doc

* ccl/pull/495/head:
  change spell error of chroot_package_run doc
Allow vfork system call.

This also moves creation of the child process data structures to the
PTRACE_EVENT_V?FORK handling.
Disable use of helper library by default.

Includes new --helper long option to enable it.
Allow vfork system call.

* ccl/pull/497/head:
  Disable use of helper library by default.
  Allow vfork system call.
Add parrot_package_create to ignore.