Pass params necessary to upload key pairs.

The original implementation did not pass the required attributes to upload
an existing key pair up to the API. This commit addresses that problem
while maintaining backwards compatibility. The 2nd argument was changed
from a string to a hash, a deprecation warning is generated.
Fix logic bug in data structure creation

Don't attempt to merge `attributes` if they aren't a hash.
Merge pull request #2543 from jschairb/fix_rs_upload_key_pairs

Pass params necessary to upload key pairs.
[rackspace|compute_v2] updates key_pair model to pass additional attributes onto compute service. (You can now pass public and private keys via the model)
Merge pull request #2544 from rackspace/keypair_attributes

[rackspace|compute_v2] updates key_pair model to pass additional attributes
Changed openstack server model to build security group objects without generating deprication warning messages
[google|compute] Remove RHEL from Global Project list
[aws|fog] Don't pass :host to Excon request

See issue #2284
Removed host from SQS connection request arguments
Revert "[aws|sqs] remove host/port from request"

This reverts commit 8c5ea5d43b17be2691ce8130f4bfeb934693fdb4.
Merge pull request #2546 from red5studios/master

[aws|fog] Don't pass :host to Excon request
Update network parser to add private ips to array
Previously the network parser would overwrite the private ip addresses
if there were more than one. These are now added to an array
Update documentation of return values
Merge pull request #2547 from amysutedja/sqs_excon_host_fix

AWS SQS signature mismatch and Excon warning fixes
Merge pull request #2545 from howech/master

Changed openstack server model to build security group objects without generating deprication warning messages
Closes #2469

Monitoring-specific soluton to pagination. 'marker' was being extracted but not stored.
fix get_bucket_acl request method in Google Cloud Storage
Merge pull request #2551 from elight/monitoring_pagination

[Rackspace] Monitoring pagination fix
[libvirt] fix readme gem reference

Closes #2553
Merge pull request #2554 from allomov/fix-get-bucket-acl

[google] Fix get_bucket_acl request method in Google Cloud Storage