Merge NRefactory changes from the SharpDevelop repository.

Includes Siegfried's work on the output visitor (ITokenWriter) and some minor bugfixes.
Add back CSharpOutputVisitor.ConvertString().