simple-markdown: don't add headings/etc inside paragraphs

Summary:
Previously, the following:

    paragraph # text
    more paragraph

would turn "text" into a heading in the middle of the
paragraph, which is incorrect.

This commit is an easy but unideal fix for this problem.
We make headings, horizontal rules, and fences more strict
about having to end in a double newline, which fixes the
problem but makes some common use cases not work:

    # header
    text

or

    # header
     * list

or

    header
    ======
    text

This is sad but not very important for perseus, and we can
address it later, probably by adding block vs inline
clarifications to the regex portion of the parser.

This commit also standardized the "double newline detection"
regex piece a bit, from `\n+` to `(?:\n *)\n`, which is
immune to blank lines filled with spaces (which content
creators sometimes write).

Test Plan:
`make test`

tried headings in the simple-markdown-tester widget

Reviewers: emily

Reviewed By: emily

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