Add automatic parent diff support for git reviews with revision-range

Review Request #2378 — Created May 25, 2011 and submitted — Latest diff uploaded




When using a revision-range, you need to specify a parent diff if the first revision is not available in the upstream which reviewboard can see (e.g. via gitweb).  Hence I have made this happen automatically by 
detecting whether the upstream contains that revision and then creating a parent diff from the merge-base to the first revision.

Previously it appeared that I had to do this by creating diffs manually and uploading them to the web interface, so this improves matters somewhat for me.

I believe that this should always produce diffs which apply cleanly, but any corrections are gladly accepted  :)

Patch against most recent git sources of rbtools follows, and only adds this for the git support as that's the only repo I have handy to test it with.
Tested with examples which were failing to automatically create correct diffs on our local install of reviewboard.  e.g. local changes on a branch which has an upstream associated but the start of the revision range is not yet pushed so it may not necessarily cleanly patch.