'Try to return a security group by name. If the group is not found,
attempt to create it.  Description only applies to creation.
auth_ssh - authorize ssh traffic from world
auth_group_traffic - authorizes all traffic between members of the
group'

def get_or_create_group(self, name, description, auth_ssh=True, auth_group_traffic=False, vpc_id=None):

    sg = self.get_group_or_none(name)
    if (not sg):
        sg = self.create_group(name, description, auth_ssh=auth_ssh, auth_group_traffic=auth_group_traffic, vpc_id=vpc_id)
    return sg
