Adding YAML frontmatter support to the lexer and parser

I'm not really expecting this to make it into the core as is. I wanted to highlight some of the areas that I'd love to see some extensibility though. Right now there's no way to add in additional language constructs outside of the default tag delimiters: {#, {%, {{, #{. It'd be great if there was some way to augment this list with additional delimiters providing a means to add in things like YAML frontmatter.

This addition feels more like an extension to me, but I don't see any way to implement it as an extension within the current codebase.