1. a new cmd teuthology-dispatcher: It watches a queue and takes
job from it, locks required nodes without reimaging them and runs
the job as its suprocess by invoking teuthology-dispacther in
supervisor mode. Supervisor mode reimages the target machines in
the config, and invokes teuthology cmd to run the job.
2. refactors task/internal/lock_machines.py: doing so enables
locking machines in dispatcher while following DRY.
3. refactors reimaging logic in lock/ops.py: doing so enables
reimaging machines in dispatcher's supervisor mode while following
DRY.
4. adds an argument, reimage, to lock_many in lock/ops.py: enables
optional reimagining of machines depending on the value. Defaults
to True. Used in dispatcher to lock machines without reimaging them.