Support timeout option

Installing all dependencies can be long on large projects. This changeset brings support for providing a `timeout` option. The default value is 300 seconds, the Puppet default.