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.
Add better support for copied files in Git diffs.

We introduced support for moved files a while back, but copied files
were never properly supported. Copied files with 100% similarity would
flat-out break.

This change introduces support for parsing the copied file info from git
diffs, storing this state in the database, and showing it in the diff
viewer (just like we show moved files). It doesn't require any schema
modifications in the database.

This is the version for 1.7.x. A separate change will be made for 2.0,
since the code has changed enough since than to warrant some slightly
different changes.