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.
Is this needed? I though if `HOEDOWN_EXT_MATH` we would never get here in the first place. Other `char_*` extension functions (e.g. `char_quote`) do not check this either.