Adding openssh-client as a dependency to make sure ssh tests work.

On build systems without the ssh executable some ssh tests would previously fail
Merge pull request #425 from freider/freider/ssh_dependency

Adding openssh-client as a dependency to make sure ssh tests work.
Add support for dynamic requiremnets

Tasks may now yield new requirements in run just as they are returned
in requires. If requirements are fulfilled when yielded the task will
continue, if not it will be rescheduled to be run when requirements are
finished. Note that this means that the task will be rerun from start.
Add dynamic requirement example