Remove mbstring as a dependency

Half done with #38, but 2 of the 3 uses are removed.

Found some weird hack for string length that involves regex. I'll take it.

Not sure what to do about `mb_strtoupper()` though.

https://github.com/thephpleague/commonmark/search?utf8=%E2%9C%93&q=mb_strtoupper&type=Code
Yep it does.  `utf8_decode` will turn the multi-byte characters into a single byte representation.  It's okay if the conversion fails (and we get `?` characters) since we just need a count here.