Enable setting attachment thumbnails through the API.

The summary is a bit of a lie. This theoretically allows setting attachment
thumbnails through the API, but it's really just plumbing--it's up to individual
mimetype handlers to actually implement it (if they want).

Testing done:
Used this in conjunction with a review UI extension that takes advantage of it.
Allow users to remove ssh from admin settings.

This change adds a "Delete Key" button to the SSH key settings page, which
allows users to get rid of old keys.

Testing done:
Both manually and unit test passed, includes:
* Creating a key from scratch still works
* Deleting works

Manually tested:
* Clicking Save when there's a key, doesn't trigger any event

Reviewed at http://reviews.reviewboard.org/r/3758/
Fixes bug 2743
Convert the "set submitted" svn hook to new api.

The svn commit hook to set a review request submitted only worked with the
pre-1.6 api. This patch makes it work with the new api. It drops support for the
old api.

Testing done:
Tested on my private setup with reviewboard 1.7.4 and subversion 1.7

Reviewed at http://reviews.reviewboard.org/r/3909/
Enable usage of non-standard SSH ports for connecting to repositories.

This allows rbssh to use a non-standard port when given either the -p
parameter or when a port is in the provided UR (hostname:port).

Fixes bug #2841
Add a CONTRIBUTING guide.

GitHub will show this when someone's contributing. Hopefully it will
lessen the number of pull requests.
Add a --web-server-port argument for rb-site.

This allows the user to configure the port that should be used in the
web server configuration. It defaults to 80, so nothing changes there,
but it should be easier to automate a configuration using a different
port (such as when deploying behind nginx/varnish) now.

This is a more advanced option, and is not exposed during the wizard
flow.
Fix references to cgit id=

id2= is actually for SHA-2 hashes, which standard git installations
do not provide.

See https://fedorahosted.org/fedora-infrastructure/ticket/3687 for
additional details.

Reviewed at http://reviews.reviewboard.org/r/3930/
Revert "Fix references to cgit id="

This reverts commit 5c55e7a7d962e3143b3a7e28b0098d0e7139d75c. It
appears that some repositories have problems with this change.
Fix up local site permission denied tests.

The url resolvers changed such that we need to catch ViewDoesNotExist in
addition to NoReverseMatch. This also adds a div that we use for some style
fixes in rbcommons.
Fix links to file attachment review UIs.

Using file attachments with local sites was creating broken links. The issue
here was that it was using pk instead of display_id.
Fix the other file attachment link.

I fixed the one for the "Review" command but not the thumbnail overlay. Trivial
fix.
Fix should_update_issue_status to avoid uncaught exceptions.

Every so often, I see a traceback from our servers coming from
BaseCommentResource.should_update_issue_status. The issue here is that
issue_status isn't in the kwargs, but our issue_string_to_status will raise an
exception if the passed-in value is None. This changes it to always return False
in the case that issue_status isn't in kwargs, and fixes up a little bit of
formatting.

Reviewed at http://reviews.reviewboard.org/r/4025/
Merge branch 'release-1.6.x' into release-1.7.x
Don't deal with unused files in a parent diff.

When uploading a diff with a parent diff, it's very common to have files
that are in the parent diff that are not in the actual diff going up for
review. This is especially true for large merge branches, or when some
incorrect parent diffs are put up (wrong parameters passed to
post-review/rbt post).

Each unused file gets checked against the repository and then then
thrown away. This is pointless.

We now ignore every file in a parent diff that doesn't have a matching
diff in the actual diff file.
Fix issues with the borders/corners around datagrids.

On the datagrids (all but the dashboard), the title header didn't have
rounded corners, making the background stick out just a bit.

On the bottom of the datagrid, the last item did the same thing. The
last entry now should always have rounded corners.

There was a small issue with the padding at the bottom of the box for
datagrids that made the rounding at the bottom look wrong. This was 1px
padding that IE needed. We now target IE specifically for that padding
with a little hack.
Add support for registered GitHub OAuth applications.

Registered GitHub OAuth applications have the added benefits of central
revocation of a key and higher rate limits. While it's not possible for
us to turn this on for every installation out there (since sharing a
client secret is a very bad idea), those who need it can register their
own application entry and set it up with Review Board.

This is a pretty advanced feature, so there's no UI-side configuration
for this. Those who need it are expected to set the
settings.GITHUB_CLIENT_ID and GITHUB_CLIENT_SECRET keys.
Fix review request ID in email subjects.

We were using the id in email subjects instead of display_id. Very simple fix.

Reviewed at http://reviews.reviewboard.org/r/4032/
Fix errors with the use_ticket_auth form field.

When saving repositories, we can sometimes hit an issue where get_scmtool()
fails due to the repository object not actually existing. Since we don't really
care about having this in extra_data for repositories which don't support ticket
auth, we don't need to include this check.
Fixed overzealous initialization of PYTHONPATH.

This is a bugfix over __init__.py that was inititalliy changed at
https://github.com/reviewboard/reviewboard/commit/915452d483a812ee34006741a6f5c23a4d03a5b1

The current initialization is overzealous and conflicts with the
installation call from extensionbrowser's easy_install usage (with the
current initialization, an easy_install call would nuke all entries in
the easy_install.pth file and overwrite previous entries).

Reviewed at http://reviews.reviewboard.org/r/4027/
Add console.warn to consoleUtils.js

This will let us use console.warn without worrying whether all browsers support
it.

Reviewed at http://reviews.reviewboard.org/r/4044/