Allow a block of default content with cms_snippet_content

If such a block is given, first an attempt is made to find a matching Cms::Snippet, if one is found its content is displayed (current behavior unchanged).  If no Cms::Snippet is found, a new one is created using the content captured from the block.

### Rationale
A common pattern in our work is adding new snippets to sites after they have been launched.  Rather than the current need to both add the snippet call to the code & remember to create it in the production database, this allows for this all to happen directly from the code.