AsciiDoc writer: Double markers in intraword emphasis.

Closes #1441.
Org reader:  text adjacent to a list yields a Plain, not Para.

This gives better results for tight lists.  Closes #1437.

An alternative solution would be to use Para everywhere, and
never Plain.  I am not sufficiently familiar with org to know
which is best.  Thoughts, @tarleb?
readWith:  reverted generalization from f201bdcb.

We need input to be a string so we can print the offending line
on an error.
Markdown reader: revised definition list syntax (closes #1429).

* This change brings pandoc's definition list syntax into alignment
  with that used in PHP markdown extra and multimarkdown (with the
  exception that pandoc is more flexible about the definition markers,
  allowing tildes as well as colons).

* Lazily wrapped definitions are now allowed; blank space is required
  between list items; and the space before definition is used to
  determine whether it is a paragraph or a "plain" element.

* For backwards compatibility, a new extension,
  `compact_definition_lists`, has been added that restores the behavior
  of pandoc 1.12.x, allowing tight definition lists with no blank space
  between items, and disallowing lazy wrapping.
Updated changelog.
Markdown reader: Fixed small bug in HTML parsing with markdown_attribute.

Test case:

    <aside markdown="1">
    *hi*
    </aside>

Previously gave:

    <article markdown="1">
    <p><em>hi</em> </article></p>
Fix behavior of `markdown_attribute` extension.

It now works as in PHP markdown extra.  Setting `markdown="1"` on
an outer tag affects all contained tags until it is reversed with
`markdown="0"`.  Closes #1378.

Added `stateMarkdownAttribute` to `ParserState`.
HTML reader:  parse Div and Span elements even without `--parse-raw`.

Closes #1434.
Include `lot` and `lof` variables in latex template.

These can be set to get `\listoftables` and `\listoffigures`.
Closes #1407.

At this point we won't add a command line argument, because
this only affects one writer.  But the variables can be set
at the command line with

    -Vlof -Vlot

or in YAML metadata.
EPUB writer:  Avoid excess whitespace in nav.xhtml.

This should improve TOC view in iBooks.  Closes #1392.
Markdown writer:  Avoid wrapping that might start a list.

Or a blockquote or header.  Closes #1013.
Shared.hierarchicalize: Don't number subsections of unnumbered sections.

They were previously numbered, starting from the previous numbered
section, which was wrong.
Revert "Shared.hierarchicalize: Don't number subsections of unnumbered sections."

This reverts commit 2a46042661a088096ac54097db5cd3674438bb63.
Generalised readWith to readWithM
Exported runParserT and Stream
Merge pull request #1444 from mpickering/master

Generalised readWith to readWithM
DocBook reader:  Better handle elements inside code environments.

Of course, we can't include structure in the code block, but
this way we at least preserve the text.  Closes #1449.
Fixed runtime error with compactify'DL on certain lists.

Closes #1452.  Added test.
Generalised more in Parsing.hs to enable the use of custom state
Added txt2tags reader

http://txt2tags.org/

There are two points which currently do not match the official
implementation.

1. In the official implementation lists can not be nested like the
following but the reader would interpret this as a bullet list with the
first item being a numbered list.

```
  - + This is not a list
```

2. The specification describes how URIs automatically becomes links.
Unfortunately as is often the case, their definitiong of URI is not
clear. I tried three solutions but was unsure about which to adopt.

* Using isURI from Network.URI, this matches far too many strings and is
therefore unsuitable
* Using uri from Text.Pandoc.Shared, this doesn't match all strings that
the reference implementation matches
* Try to simulate the regex which is used in the native code

I went with the third approach but it is not perfect, for example
trailing punctuation is captured in Urls.