Increase the size of the comment dialog.

The comment dialog's a bit small, and that makes it harder to show code
samples or construct more detailed comments.

This change increases it by 50px in both directions. While not a major
increase, it feels like it.
Improve performance when rendering diff lines.

This makes a number of optimizations to our diff rendering process:

1. Some unnecessary string comparisons from the diff_lines template tag
   have been simplified, so that we're only ever comparing one string.
   Small change, but one that should add up over the course of diffs.
   From performance testing, this appears to be roughly 30% faster
   overall.

2. We were checking if we needed to highlight regions for every
   single line, not just replace lines. This meant we did empty string
   checks, length checks, and string comparisons for every single line.
   These also added up, even though it only ever triggered the
   highlight region code for replace lines.

   Instead of all this work, we now check if it's a replace line
   up-front, preventing all the other checks.

3. Highlighting regions for a replace line is now twice as fast.
   Instead of parsing every character and keeping track of state,
   we're making use of `str.find`, which is much faster. We're also
   grabbing ranges of a string at a time, and reducing accesses to
   indexes of regions.
Fix incorrect labelling on review request status graph in admin.

The admin site has a widget that shows the percentage of all review requests in
various states. Unfortunately, this graph shows requests with a status of "D"
as drafts instead of as discarded.

I've fixed this graph to split things based on public or non-public, which
actually shows the draft state. I've then renamed the "D" state to be correct.

Testing done: Looked at the graph in the admin site using data from r.rb.o.

Fixes bug 3270.
Merge branch 'release-1.7.x' into release-2.0.x