Add new API for working with default reviewers.

We never had API for default reviewers before, meaning that it was
impossible for scripts to query or manipulate them.

This introduces POST, PUT, DELETE and GET support for default reviewers.
The functionality is pretty standard. Querying the lists, though, has
some nice filtering to narrow down by repositories, users, and groups.

To get the errors to propagate correctly, DefaultReviewerForm has been
updated to tie any user/group/repository validation errors to the
appropriate fields.

33 new unit tests were added.