Prepare for conditionally escaping Markdown based on user settings.

Previously, we assumed that plain text should always be Markdown-escaped
for editing purposes. However, when Markdown becomes optional, we won't
always want to do this. Instead, we want to take the user's settings
into account, and only escape if the text isn't already in Markdown and
the user has chosen to edit in Markdown by default.

A couple of new Markdown utility functions were added to normalize text
for editing and for determining if a user wants to edit in Markdown by
default. The latter is hard-coded to True right now.

New template tags have been added for this new normalization. The old
markdown_escape filter has been removed. Templates now contain the
proper edit state for the user.

Reviewed at https://reviews.reviewboard.org/r/6467/