Replace Lucene search for Review Requests with Haystack and Whoosh.

Full-text search with Lucene is a hassle to set up. Haystack and Whoosh are
pure python so it's easy to include them with Review Board and have full-text
search available out of the box. Regular maintenance of the search index is
still required for the search function to return up-to-date results.

These Review Request fields are indexed : id, summary, description, commit_id,
testing done, bugs, author (submitter's full name), submitter (username),
filenames of the files in the diffs (diff content is not indexed).

Testing Done:
* Enabled and disabled search in General Settings and changing index file path
  and results per page, followed by rebuilding the index.
* Search using the following fields:
      id, summary, description, testing done, bugs, author, submitter,
      diff filenames.
* Built and inspected Sphinx docs.
* Built and updated the index through rb-site.
* Unit tests passed.

Reviewed at https://reviews.reviewboard.org/r/4935/

Obsoletes bugs 2021, 2544, 2755, and 3095
Clean up the look of review UI pages.

Review UI pages were pretty ugly. They had this bit of the review
request box sticking out with nothing but the caption. This was from
back when we filled that with the screenshot list.

Now, by default, a review UI using the default.html template or the
`review_ui_content_box` block will have its UI shown in the confines of
that box. It has the whole area to play with, and isn't restricted by
any padding or UI elements. It will automatically have the actions
drop-down right above it as well.

Review UIs not using this template or block will appear below as before.
In this case, though, the bit of box will be removed, showing just the
action bar, cleanly floating there.

One side-effect of this is that the caption is no longer shown
automatically. It's now up to the review UI to decide how to show this.