Fix some URL reversing breakages on Local Sites.

When generating the download links for files in the diff viewer, we were
calling reverse() instead of local_site_reverse(). This led to a failure
when used on a LocalSite. We now use the proper function.

Search results were also calling reverse(), instead of
local_site_reverse(), when attempting to take the user to the All Review
Requests page.

Reviewd at https://reviews.reviewboard.org/r/5847/
Fix the extraction of commit hashes from Bitbucket webhook payloads.

Previously, the commit hash was read from the 'node' field of the JSON
payload, which only holds the first 12 characters of the git hash.

If we're trying to determine which review request ID corresponds to a
given webhook, but the request ID is not mentioned in the commit
comment, then we must search for an existing review request which
matches the commit hash in the webhook payload.

Since the 'get_review_request_id' function searches for an exact match
of the commit hash, we now use the 'raw_node' property, which contains
the full hash.

Testing Done:
Tested by pushing to a private Bitbucket git.

The commit did not mention the review request ID, but the request was
automatically closed after the webhook was received.

Reviewed at https://reviews.reviewboard.org/r/5851/
Update to CodeMirror 4.2.

We've been running CodeMirror 3.20, but there's been quite a few
releases since then. These have focused on speed, bug fixes,
compatibility, and a bunch of things we honestly don't care about right
now.

Reviewed at https://reviews.reviewboard.org/r/5852/
Keep the file index row heights consistent after loading.

When loading the files in the diff viewer, the height of the row in the
file index would fluctuate. The loaded row information was slightly
taller than when it just showed the spinner.

This was mostly due to the margin-bottom of the chunk dots. That margin
was unnecessary, even for wrapping, and has been removed.

There were also some margins for the graph icons that weren't really
needed, and a min-height on the row that didn't affect anything. I've
removed all this and standardized heights and offsets through variables.

Fixes bug #3361

Reviewed at https://reviews.reviewboard.org/r/5853/
Fix a breakage with the new CodeMirror version.

The new version of CodeMirror regressed in the initial display of the
widget when editing a large text field. The widget would appear at its
minimum size. Calling refresh() after showing it fixes this.
Revert CodeMirror 4.2.

CodeMirror 4.2 resulted in some odd breakages, and was causing some out
of memory issues that caused the browser to crash.

This change reverts back to 3.20.
Fix URL names and targets for the password reset flow.

The password reset functionality regressed when we switched over to django's
bundled implementation (instead of our own). We had a couple earlier fixes to
this, but there were still some small errors. This makes it so that all the URL
names and view functions match up exactly as they should.

Testing done:
Went through the whole password reset flow and verified that it works.

Fixes bug 3358.

Reviewed at https://reviews.reviewboard.org/r/5856/
Merge branch 'release-2.0.x'