'k - I've been doing booleans rather than exceptions with the SecurityGroupExtension too, following the model of deleteImage in ImageExtension, but I'm game for refactoring to do exceptions if that feels right.