Detect if DBS agent is connected

Use dbsutil -l to determine if DBS agent is connected.
Show a warning and disable batch mode if not.
Batch job output parsing improvements.

Parse the output of the batch job incrementally rather
than waiting until the entire batch is finished.
For any jobs that we know are complete (i.e. they
echoed the success token) put them in the finished
queue so the output can be reported.

Ensure we only run one batch subprocess at once.
Allow jobs to run in parallel with batch job

Now that we get notified when items from the batch are complete,
we can start running more jobs in parallel.

Restrict the parallelism since batch jobs do run locally as well
to avoid swamping the host.