Clangd currently has a really basic formatted string generation
framework and it is not enough to generate some hover responses we want to.
This patch improves that infrastructure by adding more types of nodes and
renderings. While generating markdown, spesifications in
https://github.github.com/gfm/ was followed.
Naming: not sure "string" is the right name - it doesn't represent the things here that are stringiest.
Block? (maybe in a markup namespace?)