add resource limitations

With this patch, you can now manage resources jobs and prevent that jobs limiting the same resource can slow down processing.
Example usage:
- if you connect to a remote host you could set a limit on the host, and therefor prevent that the remote host get dosed by having to many jobs connect to a specific host.
- If a job is causing high io on a remote host but the job may run on any worker node, resource limitations prevent that too many jobs accessing a particular host may slow down overall job processing.

resources calculation is done on the job handler and can therefor calculate the resources needed.