Use CodeMirror's "change" event to trigger comment model changes.

The CommentDialogView was listening to keydown/keyup directly to determine when
to set the "text" property in the model. This worked most of the time, but
meant that if someone used the context menu clipboard operations, it wouldn't
think a change had occurred.

CodeMirror has a "change" event which handles all of these cases. I've plumbed
this through, which both fixes the bug and simplifies the code quite a bit.

While I was doing this, I noticed that closing the dialog caused an infinite
recursion with _.super (which the browser helpfully detected and gave an
error). The issue seemed to be that TextBasedCommentBlockView used _.super to
call 'remove', but AbstractCommentBlockView didn't define a remove method. I've
switched this over to using the prototype instead, which prevents the warning.

Testing done:
Tried making changes to comments by typing stuff, and by using the context-menu
cut and paste operations. Saw that all such changes caused the "Save" button to
become sensitive.

Fixes bug 2442.

Reviewed at https://reviews.reviewboard.org/r/5397/
Fix settings environment for docs builds.

The docs still had several scripts using setup_environ. This method has been
deprecated since 1.4, and now that we're on 1.6, it's gone entirely. This
change switches over to the environment variable approach.

Testing: Built the codebase and manual docs.

Reviewed at https://reviews.reviewboard.org/r/5398/
Provide useful lists of URL names for extensions.

This defines some lists of common URL names that extensions can use for
the various apply_to fields. These fall into three categories:

1. Diff viewer pages
2. Pages with reviewable content.
3. Pages showing the review request box with fields.

These are not yet documented, but will be in some of the new docs work
I'm putting together.
Make all URL names consistent.

This changes all the URL names to use '-' instead of '_' as a separator.
The '-' is more common in Review Board, and is used exclusively in
Djblets.
Rename 'show_submitted' to 'show_closed' everywhere.

Since we're now providing 'Show/hide closed' instead of
'Show/hide submitted', it makes sense to keep the naming the same
everywhere. This change updates the field in Profile, the query
parameter, and the code in the datagrid to use the new naming.