Factor out almost all fs. and path. calls in the tool

This will be useful when we want to be smart with windows file paths later
Also, all of the file calls are asynchronous with fibers now, which comes with
many benefits.
On Windows, you can't escape things with backslashes AFAIK - path\\to\\something isn't valid at all. So since this function is running on windows paths only I think it should be OK? Not exactly sure @Slava