Fix links for file attachment URLs on CDNs in e-mails.

File attachment URLs on CDNs weren't showing up correctly in e-mails. We
were prepending the http(s)://domain to them, which was a problem when
that was already included in the URL. We now guarantee that
FileAttachment.get_absolute_url will return an actual absolute URL,
domain included, and it will only prepend the http(s)://domain if it's
not already there.
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.
Merge branch 'release-1.7.x'
Fix unit test breakages from the recent merge.

The recent merge was pushed too soon, and broke unit tests, due to
differences on the release-1.7.x branch. This restores the test suite to
working order.