With `RedirectingFileSystem` simplified to handling only path mapping,
its old behaviour has to be implemented elsewhere.
Add a new API that takes multiple overlays (buffers or paths) and maps
them into an `OverlayFileSystem` taking into account the "fallthrough"
and "redirecting-with" properties in the YAML overlay specifications.
Note that this comes with a slight change in semantics, it is no longer
possible to chain VFS mappings. Given an overlay with a mapping of A ->
B and another overlay with a mapping B -> C, A will no longer map to C.
A -> C must be specified as its own mapping if this is desired.
Depends on D121421 and D121423 and D121424