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.
Merge branch 'release-1.7.x'