check parameter expansion of shell scripts
add double quotes to ${} except for set $line command
Bump to 4.3
use $() format for command substitution instead of the `` format
Trivial shell code cleanup.

* ccl/pull/501/head:
  use $() format for command substitution instead of the `` format
  add double quotes to ${} except for set $line command
  check parameter expansion of shell scripts
Simplified test code to reduce spurious test failures.
.gitignore
Remove object on clean.
Sort syscall case blocks.
sort headers
minor formatting
Move waitpid handling to kernel.

ptrace on kernel version 2.5.46 (the minimum we support now) correctly
handles the process hierarchy.

This also fixes a bug where children would never be reaped (because only the
actual process parent can reap the child). The old ptrace API (PTRACE_TRACEME
and CLONE_PTRACE) had the nasty side-effect of the tracer reaping children.
Instead, using PTRACE_ATTACH and PTRACE_O_TRACECLONE means that tracee parents
must appropriately reap their children. Parrot can no longer do it itself. [In
any case, we don't want to implement process waiting for tracees anyway since
it has historically been very bug-prone.]

Fixes #503.
Remove unnecessary process states.
Don't hook getppid.

This is also no longer necessary.
Remove unused fields in pfs_process structure.

c2640f2b removed the code that used them.
using hash table to de-duplicate namelist
add stderr redirection to system function
move special caller checking procedure from pfs_package_create.c into pfs_table.cc
add -Wall -pg into configure
hardcode copy degree