Fix issue with spark_ec2 seeing empty security groups

Under unknown, but occasional, circumstances, reservation.groups is empty
despite reservation.instances each having groups. This means that the
spark_ec2 get_existing_clusters() method would fail to find any instances.
To fix it, we simply use the instances' groups as the source of truth.

Note that this is actually just a revival of PR #827, now that the issue
has been reproduced.
Merge pull request #938 from ilikerps/master

Fix issue with spark_ec2 seeing empty security groups
Merge branch 'master' of github.com:mesos/spark
Smarter take/limit implementation.
Merge branch 'demo' of github.com:rxin/spark into demo
Merge branch 'limit' into demo