Refactor logic out of UploadDiffForm

All of the logic for taking a diff file and creating a DiffSet was in
UploadDiffForm. This change moves it out into a manager, so that I'll be able to
use the same code for creating DiffSets from diff data fetched from an upstream
repository.

Testing done: ran unit tests.
Reviewed at http://reviews.reviewboard.org/r/4231/
Merge branch 'release-1.7.x'