(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).
On windows this is going to have problems. The file separator is `\` which ends up expanding the path so something like `...\**/*.pp` which escapes the first `*` and stops it from recursing.