Fix a couple errors with adding GitHub repositories.

The introduction of HostingServiceError broke InvalidPlanError's
constructor chaining, leading to bad error messages. This was found
because of a larger problem, which was that some new restructuring
prevented 'plan' from being set. GitHub depends on this, and was
throwing an error when it was passed None.
Filter out users not on the LocalSite when sending e-mails.

Users who were previously listed as a reviewer on a review request
belonging to a LocalSite, or participated in the discussion, would
continue to receive e-mails related to the review request after removed
from the LocalSite. This isn't ideal, as they shouldn't have had any
access once removed.

We now filter out these users when sending an e-mail. Both the
target_people list and the review participants are considered when
filtering.