Use beanbag-tools for much of the release script.

This makes use of the modules found in beanbag-tools to perform the
release, greatly simplifying the release script. Now, the release script
just defines the order of operations, and any custom building that needs
to be done.

Reviewed at https://reviews.reviewboard.org/r/6023/
Include the Python version in the support tracking data.

The Python version is now sent along with the other support data, in
order to better track issues and see what versions of Python are still
being in use.

Reviewed at https://reviews.reviewboard.org/r/6038/
Fix issues with the new update_from_commit_id protection on 2.0.x.

A fix was recently added to prevent a failure when fetching a changeset
from creating a review request without a commit ID. This worked fine on
1.7.x, but the underlying code changed a bit on 2.0. On 2.0, we didn't
have a saved review request in the database before attempting all this,
and the new change broke saving of review requests completely.

The code has been reworked to perform the updating and validation early,
and to also associate the commit ID in the event of failure (in order to
allow it to more easily try again or at least look up the review request
later).

A number of unit tests for various conditions were added to help with
these cases and to also test for commit ID uniqueness.

Reviewed at https://reviews.reviewboard.org/r/6044/
Add better support for archiving repositories.

Archiving had issues before where an archived repository's path would
still conflict with a newly created repository. This confused a lot of
people using RBCommons, and required some manual work on our end to fix.

Now, we store a flag indicating that a repository is archived, and we
store the archived timestamp. The timestamp becomes part of the
unique_together for the path, preventing that from conflicting.

Reviewed at https://reviews.reviewboard.org/r/6043/
Add draft and close banners to review UI pages.

The review UI pages for file attachments didn't have draft or close banners,
which made it kind of confusing, especially in the case when the review request
wasn't yet published. This change adds them, and fixes up some of the issues
that resulted from it.

Testing done:
Tested draft, public, and closed review requests with both the text and image
review UIs. Saw all the expected banners and no javascript errors.

Reviewed at https://reviews.reviewboard.org/r/6033/
Merge branch 'release-2.0.x'
Add the BugTracker framework and Bugzilla/JIRA bug infoboxes.

This change adds a new interface to the hosting service app for deeper
integration with bug trackers. At the moment, this interface defines three
methods to fetch information about a given bug, which are used to provide a
hover infobox that shows the summary, description, and status.

This interface is currently implemented by the existing Bugzilla backend, and
by a new JIRA backend.

The next steps for this is to implement the interface for more bug-tracker
backends, and to start adding capabilities such that Review Board can do things
like add a comment to a bug when a review request linking to it is published.

This change is based on these changes by Tomi Äijö:
* https://reviews.reviewboard.org/r/5531/
* https://reviews.reviewboard.org/r/5769/
* https://reviews.reviewboard.org/r/5745/

I've made several changes to Tomi's original implementation. The bug infobox
formatting has been cleaned up a bit, especially with regards to the formatting
of the description text. The caching steps are now done in a helper inside the
BugTracker class so we don't have to re-implement it everywhere. I've also made
it so that failures to fetch the bug result in no infobox, rather than an
infobox which just has the ID and nothing else.

Testing done:
* Tested the bug infobox with a bug tracker configured to point to
  https://bugzilla.mozilla.org, and https://jira.atlassian.com. Saw that bug
  information was fetched correctly and that the infobox looked good.
* Tested invalid bug numbers and saw that the infobox request returned 404 and
  no infobox was displayed.
* Tested that links to existing bug trackers (Google Code, etc) worked well.
* Tested that newly-added bugs linked correctly.
* Ran unit tests.

Reviewed at https://reviews.reviewboard.org/r/6047/
Fix a simple unicode issue in CVS.

I noticed some unicode warnings in the CVS backend while running the SCMTools
unit tests. This fixes thim.

Reviewed at https://reviews.reviewboard.org/r/6051/
Merge branch 'release-2.0.x'