Ensure IAccessible2 remains available in Firefox after restarting NVDA on Windows 10 Creaters update, register ISimpleDOM proxy to allow math in Google Chrome without Firefox installed, and Allow the user to get back a virtualBuffer when restarting NVDA with a Firefox document in focus (#7535)
* Allow IAccessible2 to be used again in Firefox after a restart of NVDA on Windows 10 Creaters update. Also abstract code making it easy to register other COM proxy dlls.
* Build and register ISimpleDOM proxy ourselves allowing for math in Google chrome.
* VirtualBuffer.prepare: do not do anything at all if the rootNVDAObject's appModule's helperLocalBindingHandle is missing.
There may not be any binding handle yet if NVDA was started and the document in question already had focus. All though the virtualBuffer will still not yet work, at least the user can now move focus away and back again and prepare will be tried again once the binding handle is there.
* Make sure to unhook the inproc winEvent on normal termination!
* Place all NVDA dlls in a version-specific lib directory to ensure that Windows will always load the correct dll when hooking, rather than possibly falling back to a dll in a previous version that may currently still be loaded in a process.