fixes #2099 - fix handling of multiple module paths

Replace every occurrence of $confdir, not only the first one
fixes #2099 - interpolate $confdir if $environment not used
fixes #2114 Add warning if no environments found
fixes #2085 - load Puppet 3 app defaults for master mode too

Allows $confdir and other run mode specific settings to be initialised from
the defaults present in Puppet::Util::RunMode.  When requesting detail on
classes, the Puppet parser indirectly requests app level settings so both
global and app settings are needed.  Refactored into shared code for both
parser and environments to use.
Fixes #2143: Only create the log file parent dir if daemonize is true
Ignore commented lines when reading all certificates in autosign and make sure the autosign file contains a EOL on the last line