Make Process class utility method static
Add tests directory and setup requirements
Report confidence and iteration count in output

This patch adds an extra line to the default srtime output which reports
the confidence level used and the number of iterations. So this:

    $ srtime ./test
    82.743 85.916 89.089

becomes this:

    $ srtime ./test
    95% confidence values from 23 iterations:
    82.743 85.916 89.089

Issue #2.
Use argparse formatter class to show defaults

This uses the ArgumentDefaultsHelpFormatter class to show default values
for the ArgumentParser, instead of using the "%default" placeholder
which optparse used.
Use neater metavar names in help output

This replaces default metavar names in the help output:

  -N THRESHOLD, --threshold THRESHOLD

with cleaner equivalents:

  -N <n>, --threshold <n>

Issue #3.
Spawn processes using pexpect library

This allows for much greater programmatic control of the process than
simply using the os.system() call, which is limited in its capabilities.
Fail if process returns non-zero exit code

Issue #4.