Disable the virtual file system when running tests

The VFS is implemented in FCS as a static singleton, hence this ugliness. We want to ensure that the VFS initialisation only occurs once, so it is now lazy. 
The tests need to call `MDLanguageService.DisableVirtualFileSystem` before anything reaches `MDLanguageService.Instance` and a language service is created.
Its just I remember it used to be lazy but we removed because it didn't serve any real purpose, there was no time consuming processes in there or anything.