Use AbstractLinkHelper to provide common functionality for S3 and CloudFront.

* This adds setScheme() support for CloudFront and keeps things DRY.
* Add CloudFrontLink tests for protocol relative URLs.