Security group resources

This PR adds security group provisioning and some needed surrounding infrastructure.

In addition, I tried to document the ResourceState interface methods a bit better.