Previously, if a GitReviewException was raised (not, for example, a
BranchTrackingMismatch or GitDirectoriesException which subclasses it,
but an actual GitReviewException), it would still get handled in main(),
but it wouldn't have an EXIT_CODE attribute.
This happens, for example, in add_remote(), if test_remote_url() fails
both times.
Now, if the caught exception doesn't have an EXIT_CODE, it will default
to -1.
Change-Id: I8529b320795717ef8d19ca87d3fa6bd523ef93ae