Expose Xml documentation

Close #677.

There are two versions of `getXmlDocBySignature`, one uses Visual Studio services and the other uses XDocument and external files.

This PR mistakenly includes the other PR. I will rebase when the other gets merged.
It's working fine inside Visual Studio so I leave this as is for now. The stub function for testing could be improved but it's not too important.