move all the workqueue logic out of RemoteMachine to simplify this code; rely on custom scripts (e.g., dispatch-q.py) instead to wrap existing workqueue code