(PUP-2711) Make manifest-directory load recursively when future parser is on

This makes recursive loading of manifests available when the future parser is on. All .pp files in the manifestdir and its subdirectories will be loaded in alphabetical depth first order (a directory's entries are processed alphabetically, if it is a directory, it is processed before the remaining files in the current directory).
I do get different results if `file` has forward vs backwards slashes:

<pre>
C:\work\puppet>irb
irb(main):001:0> Dir.glob(File.join('c:\work\puppet\**', '*.rb'))
=> []
irb(main):002:0> Dir.glob(File.join('c:/work/puppet/**', '*.rb'))
=> ["c:/work/puppet/acceptance/config/git/options.rb","c:/work/puppet/acceptance/config/packages/options.rb","c:/work/puppet/acceptance/lib/acceptance_spec_helper.rb"....]
</pre>