OutputConverter: Cache Short Paths
Cache the Short Paths since we only convert the same few paths anyway and calling GetShortPathNameW
is really expensive.
I observed that we only get the short path for 5 Paths (e.g. the paths to the Linker and Compiler).
By caching them, the time to generate Ninja files for the llvm-project repo under the profiler goes down from 21.54s to 20.97s