(#21170) Enhancement of the module generate functionality

At the moment when people use 'puppet module generate' they are forced to use the skeleton provided by PuppetLabs.
When they want to use their own skeleton they need to overwrite the current one which can cause issues when upgrading.

This patch allows the user to set a 'module_tool_skeleton' directory where the custom skeleton directory resides.

Next to that the 'module_tool_config' option allows you to supply a config file with key=value data which can be accessed in the skeleton files
```ruby
<%= settings['key'] %>
```