text: Title: max number of tasks per dask worker 
  Body: <!-- Please do a quick search of existing issues to make sure that this has not been asked before. -->
  I am using `SGECluster` to submit thousands of tasks to dask workers. I want to request a feature to specify max number of tasks per worker to improve cluster usage. For example, if it takes 4 hours to process a task, and the wall time limit for a worker is set to 5 hours (to make sure a single task can run through; and if the compute node goes abnormal, it will time out in 5 hours), then with the current dask configuration, each worker will waste 1 hour to run through the second task, and this second task will eventually get killed and resubmit to another worker. This is a waste of the compute cluster resource. So is it possible to specify max number of tasks `X` handled by each dask worker? Once a dask worker finishes handle `X` tasks (with whatever final status), then the dask worker (SGE job) will automatically get killed so we won't waste computing resource in the cluster. 
  
  Wish for similar feature for SLURMCluster as well. And appreciate for alternative workarounds. 
  