Begin work on remote locking mechanism

The Script struct includes a maxConcurrent value that is meant to limit the
number of the same scripts running on a given target.  This changeset
contains the beginnings of implementing the ability to limitt he number
of concurrent scripts by creating a remote lock.

This changeset also introduces the idea of a wrapper task running the
actual user task.  The user task is executed by the wrapper task, and
the user task's output is put in special "stderr" and "stdout" files in
the task directory.
Use wrapper task to issue timeout and remove lock

There is now a locking mechanism in place that will allow the following
work to be done:

1) Check the maxConcurrent limit for scripts before allowing a new one
   to run.
2) Remove the DEPS directory, and copy the resulting task directory back
   over to the master.