halcmd: add 'sleep <float>' command

this is a stopgap measure intended to track down the embarrassing number
of race conditions in halcmd scripts, in particular runtests

if one adds 'sleep <time>' to a halcmd script and results somehow change,
this is a strong indication something is badly wrong
tests/edge/*/test.hal: try to figure if this has a shutdown race

if runtests failures go away due to this, this is telltale for another
race during shutdown (and no, that would not be a UBC3 contribution)
halcmd: add '-i' flag to waitusr

if a component already exited, dont fail the waitusr and hence the
halcmd exit value.

$ halcmd waitusr foo
<commandline>:0: component 'foo' not found
$ echo $?
1

$ halcmd waitusr -i foo
$ echo $?
0
tests/edge: do not fail the test if halsampler already did her job

it is ok if halsampler exited early. It is not ok to shutdown the script
if halsampler was not done at this point.

another stab at nailing down runtests failures involving halsampler
halsampler tests: make halcmd not fail on waitusr if halsampler already finished

that hopefully fixes the last cause.

The authors of these tests deserve coding bank websites in Java for life.
docs/halcmd: document the 'sleep' and 'waitusr -i <compname>' options
Merge pull request #209 from mhaberler/master

halsampler runtests: another stab at fixing #202