security_group fix for ingress rule idempotency

* If you had more than one security group ingress rule the second run
  would fail
* For instance running tests/create.pp twice would fail for the
  puppet-sg group
* Rather than grabbing the first group lets loop over them. This runs
  for me for the create test
Minor refactor to security_group create

 - Create the ec2_client for region once
New security group tests for ingress rules

 - Provide 2 new tests that demonstrate the ability to recreate a
   security group with the same values, without apply failing (fixed in
   prior commit).
 - Add a test demonstrating current limitation around mutating the
   ingress rules for a security group
 - Fix a bug with searching for a missing group via the call to
   find_group in the after(:all) - find_group throws an exception
   rather than returning nil, and accordingly this particular issue
   was never caught
Merge branch 'fix-big-with-multiple-ingress-groups'

* fix-big-with-multiple-ingress-groups:
  New security group tests for ingress rules
  Minor refactor to security_group create
  security_group fix for ingress rule idempotency

closes #28