Add ability to register custom package repos

In this pull request I've also refactored the code to fix #106
I'm testing using the Jenkins CI repository.
Merge pull request #104 from andreisavu/issue-104

Add ability to register custom package repositories
Parallel wait for SSH ports and --debug flag for puppet
Merge pull request #114 from andreisavu/issue-114

Parallel wait for SSH ports and added --debug flag for puppet