MathJax support

Based on @uranusjr's work in #112.

> From #100.

> This implements `HOEDOWN_EXT_MATH` and `HOEDOWN_EXT_MATH_DOLLAR`. The former triggers `char_math` (from `char_escape` with `\\[` and `\\(`, or from active char `$` with `$$`), which parses the block and feed the content and opening/ending tags to the renderer callback. The latter flag enabled an extra math block syntax delimited with a single `$`. Renderer callback in `hoedown_html_renderer` outputs tags and content of the block verbatim. Not sure whether I should trim and/or collapse spaces and newlines inside the block. It’s irrelevant to MathJax.
Should the last one be `data[2] == '['`?