Sandbox reviewboard.reviews.ui.ReviewUI

Extensions that create a FileAttachmentReviewUI subclass (using the
ReviewUIHook) can throw exceptions inside Review Board. The parts of Review
Board that call those methods have been sandboxed.

Now when a FileAttachmentReviewUI subclass from an extension throws an
exception, Review Board logs the errors with enough information to find which
method in the FileAttachmentReviewUI subclass threw the exception.

Testing Done:
Unit tests have been written to make sure that functions from an
FileAttachmentReviewUI subclass have been called, and when an exception is
thrown it gets logged.

The tests fail without the sanboxing, and succeed with it.

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