do not run node if queue is empty
do not run node if queue is empty

[use-rspecq]

Test Plan:
-Jenkins passes both with and without rspecq
-add sleep to one node, wait for queue to empty
  -node will not run any stages since queue is empty
-add sleep to one node, wait but still have tests in queue
  -node will still run stages and tests

Change-Id: Iace45f456c19284c6a338f5537a367917fd4f9c0
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/275325
Tested-by: Service Cloud Jenkins <9144042a601061f88f1e1d7a1753ea3e2972119d@instructure.com>
QA-Review: James Butters <4c5a489c9bb72d41f20b3b22aaf4c9b864e32f20@instructure.com>
Reviewed-by: Kyle Rosenbaum <08c6582752644f4eca90309d6d9805aeb3128ceb@instructure.com>
Product-Review: James Butters <4c5a489c9bb72d41f20b3b22aaf4c9b864e32f20@instructure.com>

sfu/canvas-lms,instructure/canvas-lms,sfu/canvas-lms,instructure/canvas-lms,sfu/canvas-lms,instructure/canvas-lms,instructure/canvas-lms,sfu/canvas-lms,sfu/canvas-lms,instructure/canvas-lms,instructure/canvas-lms,sfu/canvas-lms,instructure/canvas-lms,sfu/canvas-lms