made pool manager and test case more robust, fixed bug in method free(vm,opts)
added output to indicate that callback server has started successfully and is listening
switched to open3 for command execution
added synchronization while freeing up vms in child threads of child threads - eliminates potential racing condition (discovered while working on lib/puptest.rb)
fixed bug: null pointer exception if puppet module does not contain manifests directory and e.g. only a lib/parser/functions directory (function module)
refactored load_conf, added separately callable load_ppm_conf method, both loading now variables of main and master section from puppet.conf file, master properties overwrite main properties, added method to clean cert dir from node certs - will be used in lib/puptest.rb before the actual tests scripts are run. this ensures that no ssl cert exceptions will hinder the puppet script to be executed.
integration component which orchestrates all other components in a test workflow (see comments in lib/puptest.rb for workflow details) + test case covering a common scenario: 0) initial, successful run of framework, 1) framework run detects problems while running puppet node definitions, 2) non initial, successful run of framework, 3) pool size < number of changed nodes