Enhance RB.Diff to be able to create new diffs.

The existing diff model didn't do very much, and was really meant for dealing
with existing diffs. This change adds some attributes and methods that allow it
to be used to create new diffs.

Testing done:
Used this in another change to create a diff from javascript.

Reviewed at http://reviews.reviewboard.org/r/4303/