Add YAML metadata support

Many tools, such as Pandoc, Jackyl, Hakyll and others, support a metadata block written in YAML.

This PR adds support for the metadata block by including the YAML language defs in `---` fenced blocks.

It is not super robust when using `...` as an end delimiter due to the YAML definitions and could conflict with other extensions so please test and confirm this is desirable.

Another option would be including this in a draft language definition for Pandoc's markdown variant.