Enable markdown code block noescape by hack marked & highlight

To enable "no-escape" mode in markdown code block syntax
(``` and ~~~) so that & < > " ' are not escaped.

To use it, end code block with another ! (```! and ~~~!)
to prevent escape all five symbols with markdown code block,
so you may use things like &amp; and &nbsp; Also, reveal.js's
highligh escapes < and >, so add data-noescape after block.

Thus the syntax will be like this:
    ```
    block of code with & < > " '
    usually for inserting HTML tags and entities
    e.g. reveal.js fragment or custom style span
    ```!
    <!-- .element: data-noescape="true" -->

Note that it's dangerous not to escape, so use it wisely.
You'll have to manually escape all symbols for safety.

Markdown marked parser and reveal.js's highlight are hacked

* marked parser, add (!)? regex and :
    - fences:/^ *(`{3,}|~{3,}) *(\S+)? *\n([\s\S]+?)\s*\1 *(?:\n+|$)/
    + fences:/^ *(`{3,}|~{3,}) *(\S+)? *\n([\s\S]+?)\s*\1(!)? *(?:\n+|$)/

    - type:"code",lang:cap[2],text:cap[3]
    + type:"code",escaped:cap[4]?true:false,lang:cap[2],text:cap[3]

* highlight.js's integration part:
    - if( ! element.hasAttribute( 'data-noescape' )
    + if( ! (element.hasAttribute( 'data-noescape' ) ||
             element.parentNode.hasAttribute( 'data-noescape' ))