in progress commit
desperately trying to unfuck SGH
security group helpers pass first convergence cycle=
working past second converge

still has a bug in the normalizing of local rules.
we need to look up resource references in the normalization process
only SGs that can't be found should be normalized to resource
references.

Alternatively, when we get the remote rules, we need to normalize the
rules so that the source groups are normalized into resource references
ignore my todo files
removed commented out code for old way of normalizing 'self'
removed excessive logging of hvm ami selection
fixed set_tag bugs, added wait_until_terminated

there were some bugs in the way that tags were set such that on destroy,
if the instance didn't exist it would still try to set a tag and thus
generate a cascading exception

Also fixed a design error in the destroy() method. destroy() now waits
until the instance enters the terminated state. Previous to this, any
other resources that expected this instance to be destroyed would fail
as destroy returned before the instance had exited 'shutting-down'
numerous design and bug fixes

Basically, this actually is fully working for the first time as of this
commit
a few bug fixes

groups that change out of band are now re-converged automatically
added a decoy rule return on destroy

avoids an error of dereferencing None
added converge_dependency support to destroy

now groups that are included in other groups will try again to delete
themselves after all of the other groups have run destroy, thus
deleteing the rules that refer to us and allowing us to delete
ourselves.
Merge branch 'master' of https://github.com/adler/awsheet
Merge branch 'sg_refactor'

Conflicts:
	awsheet/helpers/instancehelper.py
fixed conflict for handling of Null instance tag setting
Try to tag group twice on first creation

failing to tag the group that we just created (happens because of AWS
API inconsistencies) makes the group unable to be found on enext run of
the module, so the group then must be deleted manually.

for now, I just try to tag twice.
A better solution may be to try to look up by tag and if that fails, try
by name and then add the tag, or just ditch tags altogether, but I do
think an explicit tag is a good idea for later tools integrating w/ Heet