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
Convert RB.ReviewReply to Backbone.

This is another relatively simple conversion for the data model for ReviewReply
objects to be based on BaseResource.

Testing done:
Replied to an existing review with body_top, body_bottom, and children
CommentReply objects. Published that reply and saw it get saved correctly.
Verified that loading a draft reply worked as expected. Ran js-tests.
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'
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/
Implemented handling of many trophies.

Made abstract Trophy at reviewboard/accounts/managers.py.
Made 2 inheritance class(milestone, palindrome) from abstract.
Changed iftrophy method to send trophy_list data.
Changed trophy_box to use loop for trophy_list
Revert "Fix references to cgit id="

This reverts commit 5c55e7a7d962e3143b3a7e28b0098d0e7139d75c. It
appears that some repositories have problems with this change.
Merge branch 'release-1.7.x'
Move Review Board release notes up one directory

The *.txt files for each release now live in the top level directory
of the release notes, instead of the 'reviewboard' directory. The
release notes for rbtools have been deleted as they now live in the
rbtools repository.
Add a settings_local for the codebase docs build.

This will allow the codebase docs to be built without having a working
development environment.
Fix parent object loading when calling ready() on object chains with new models.

I've been running into an issue where parts of the javascript code create a
review object, then create a comment. The hierarchy here goes RB.ReviewRequest
-> RB.Review -> RB.<comment type>. Calling ready() on the comment will fail
to load the ReviewRequest, which means that the Review won't have a valid url.
Modified according the review.
Merge branch 'master' of github.com:reviewboard/reviewboard into hiroki0228
Merge remote-tracking branch 'hiroki/hiroki0228' into hiroki0228

Conflicts:
	reviewboard/accounts/managers.py
	reviewboard/reviews/models.py
	reviewboard/reviews/templatetags/reviewtags.py
	reviewboard/reviews/tests.py