Fix Roslyn-based Markdown embedding

There are still a couple of outstanding issues.

 - Rename doesn't work, and will occasionally trigger `Unexpected False` dialogs during random typing (from rename tracking)
  - This fails because `TextUndoHistoryWorkspaceService` refuses to touch my non-VSWorkspaceImpl (even though it should work fine if it skips that check), and `VisualStudioInlineRenameUndoManagerServiceFactory` doesn't like that.
  - @JasonMalinowski, can you please make `ITextUndoHistoryWorkspaceService` public so that I can expose my own version? (or relax the workspace checks so that the existing one will work)
 - Go To Definition doesn't work for anything defined in the Markdown file
  - This is partly because of https://roslyn.codeplex.com/workitem/438
  - It's primarily because I don't have a VsTextBuffer adapter, so `NavigateTo()` doesn't know how to open it.
 - Peek doesn't work properly
  - This is caused by https://roslyn.codeplex.com/workitem/431