Fix AttributeError when trying to accessing invalid diff fragment.

When browsing to an invalid FileDiff via, we would raise a 404 exception but
this was getting caught prematurely and eventually causing a server error. This
change simply passes Http404 errors back up the stack.

Testing Done:
Opened an invalid fragment URL and saw a 404 page instead of a traceback.

Bugs closed: 3473

Reviewed at https://reviews.reviewboard.org/r/6089/
Merge branch 'release-2.0.x'
Support more than 100 Gitlab hosted repos

Newer gitlab versions do provide pagination support via a header. See
https://github.com/gitlabhq/gitlabhq/commit/0678b8a4 Gitlab v6.8.0+

Add a new method that follows the "next" rel if present in the link header, and
use this to fetch all repositories.

Testing Done:
Tested on a gitlab 6.8.X deployment against a developer reviewboard.  Was able
to add a repository that's beyond the first 100 repos.

Reviewed at https://reviews.reviewboard.org/r/6037/
Merge branch 'release-2.0.x'
Remove unnecessary apps from INSTALLED_APPS.

Modules only need to be in INSTALLED_APPS if they provide models,
templates, template tags, or other such things. We have a few entries
listed that do not need to be there.

One of these, djblets.webapi, introduced problems when we added models
to reviewboard.webapi. App labels must be unique in INSTALLED_APPS,
due to several assumptions in Django, which was the source of this
problem. (Note that we still violate this all over the place, but it
doesn't seem to matter too much right now for the others.)

Reviewed at https://reviews.reviewboard.org/r/6085/
Don't explode when a ChangeDescription references an invalid diff.

When a diff is deleted from the database, it doesn't remove the field from any
ChangeDescription objects (since that's buried in a JSONField and there's no
relation between them). This meant that if a published revision of a diff was
deleted, rendering the ChangeDescription would explode.

This change adds some bullet-proofing around the DiffField rendering to avoid
doing anything if the associated diff doesn't exist.

Testing done: Ran unit tests.

Fixes bug 3451.

Reviewed at https://reviews.reviewboard.org/r/6094/
Merge branch 'release-2.0.x'
Switch to the new template loaders from Djblets.

This updates our list of template loaders to use the new
conditional_cached (which only caches if DEBUG = False) and
namespaced_app_dirs (which allows app module prefixes for paths).

Reviewed at https://reviews.reviewboard.org/r/6092/