minor turn-prober improvements

this moves the cleanup to a trap function. Also kills Xvfb the hard way, I ended up having lots of dead Xvfb processes when testing.
I still think you don't need to hack the workingdir into the cmdline; does something like this not work?

local pids=""
for p in $(ps auxwww|grep $1|awk '{print $2}'); do
  if [ "$(realpath /proc/$p/cwd)" = "$(realpath $D)" ]; then
    pids="$pids $p"
  fi
done
echo $pids

(note l.27 probably wants to be deleted and instead cd $D after the mktemp)