Allow using filenames in codeblocks
- If there is a dot in the language name, we instead treat the first line after ``` as the filename and everything after the last dot as the language
- we use a custom "data-label" attribute on the code block to specify the name of the file (so only compatible with cinny from this point onwards)
* escape inline markdown character
* fix typo
* improve document around custom markdown plugin and add escape sequence utils
* recover inline escape sequences on edit
* remove escape sequences from plain text body
* use `s` for strike-through instead of del
* escape block markdown sequences
* fix remove escape sequence was not removing all slashes from plain text
* recover block sequences on edit