3 Hacks you never wanted to know the renderer uses

Summary:
Use simple-markdown/perseus-markdown for rendering instead of
markedReact.

This allows us to avoid several of the hacks we previously used
to add parsing rules to markedReact:

1. We split the pre-parsed source via regex to extract math
   and widget identifiers, regardless of where they were in the
   source.
2. We replaced `markedReact.inlineLexer.prototype.smartyPants` to
   inject math and widgets
3. We replaced `markedReact.Parser.prototype.tok` to inject
   `<QuestionParagraph>`s

Now we can avoid those by making use of simple-markdown's
intentionally extensible API, for hopefully a cleaner
implementation that allows us to more easily make the
changes we need to perseus content parsing.

This commit does not remove markedReact.
I'll do that in a future commit.

Depends on D13453

Test Plan:
 * Open test.html and play around with the question area, adding
   and removing text and widgets.
 * Add a sorter, which uses embedded renderers and requires
   `onRender` to work correctly for sizing
 * Add a widget to a custom format answer area, which uses a
   renderer

Reviewers: emily

Reviewed By: emily

Subscribers: alpert, alex

Differential Revision: http://phabricator.khanacademy.org/D13454