Normalize filenames coming into API to replace backslashes.

Add tests for backslashes in sourceRoot.
You want a private function callable by derived classes or you want methods to always involve `this`?

To me this function should represent the action we apply to all file names when the enter the API.  That's not something I want to duplicate, I want to know that every caller is fixed if I changed the implementation.