Fixes to signature v2 and v4 for endpoints with paths.

This is a fix for the issue discussed here:

  https://forums.aws.amazon.com/thread.jspa?threadID=110659&tstart=0

plus an additional issue with v2 signatures as outlined below.

The fix for signature v2 ensures that the canonicalized resource path
ends with a '/' in the case when the path is from the service endpoint.
The HttpRequestFactory adds a trailing '/' in this case and this was
causing a mismatch between the canonical and actual path.

The fix for signature v4 ensures that the AWS4Signer takes the endpoint
path into account then creating the canonical resource path. The common
functionality for calculation of the resource path is moved from
HttpRequestFactory to HttpUtils.

Please let me know if there are any changes I can make to help this fix get into a release.