use security groups and support assigning keys

Previously the security groups option was checked on openstack server creation but not added to what was passed to the openstack API, this fixes that. Additionally you can now pass the key_name as a string.