Add worst fit as an schedule option.

With WORK_QUEUE_SCHEDULE_WORST, the worker selected is the one with most
resources free, with the following heuristic to break ties:

free cores > free memory > free disk > free gpus.
Merge branch 'worst_fit'

Conflicts:
	work_queue/src/work_queue.c
	work_queue/src/work_queue.h