Fix #50: fix crash for patches containing ADDED files

Use the MatchPatchPaths API to find the base repository for each
review item.
Since FilePatchInProgress objects are generated right away,
don't do it again in the PatchReviewItem: store the patches there.

From the generated patches, find the one which corresponds to this
review item (the current file actually). This is an overhead,
since it tries to do the same thing that is already done in the
MatchPatchPaths; it will be fixed when we have a single place to
parse the patch and won't do it for every reviewItem.
0.3.1
Let JSon be parsed automatically.

Remove CrucibleJsonUtils with manual parsing in favor of CrucibleApi
which lets GSon parse JsonObjects into private data classes,
which are then transformed into real model classes.