change default timeout to 10s from infinite in parallel tests

avoids hangs with apply_sync in tests
adjust Scheduler timeout logic

Timeout starts when task submission is attempted.
That is, it starts *each time* in resubmit / retry cases.

Avoids issues of timeout firing only once while a task is pending,
when it might come back and be retried after the timeout has fired.
test very short timeouts

which should be guaranteed to fire while the task is pending
set minimum engines in a few tests
Merge pull request #4270 from minrk/task-timeout

adjust Scheduler timeout logic

Timeout starts when task submission is attempted. That is, it starts each time in resubmit / retry cases.

Avoids issues of timeout firing only once while a task is pending, when it might come back and be retried after the timeout has fired.

Also adds a ten second timeout for sync calls in the tests, which should hopefully avoid hangs when things are misbehaving.

closes #3210