Add a new integration for Slack.

Review Request #8372 — Created Aug. 31, 2016 and submitted — Latest diff uploaded

Information

rbintegrations
master
6817a6b...

Reviewers

This adds a new Review Board 3.0-compatible integration for Slack. This
is built upon the original rbslack extension, but enhances the message
sent to Slack to include additional information, such as the first file
attachment on a review request (or newest one on an update), the
description on a review request, change description on updates,
body_top/first comment text on reviews/replies, trophies, and more.

This new integration takes advantage of the new conditions support in
Review Board 3.0 to allow admins to create multiple custom Slack
configurations, meaning that one server can post to different Slack
channels or even Slack teams, depending on whatever criteria they
choose.

Unit tests were added that cover all the ways we might send a message,
ensuring we won't unexpectedly break as things evolve.

Unit tests pass.

Tested every type of message manually.