### Summary

As part of a project to rename a user, I created a second user and group with the same UID as the first, something with Ansible supports by expliciting setting the `uid` to an pre-existing value.

Now the transition is complete and it's time to remove the old group. But Ansible can't do it, it fails with an error:

"groupdel: cannot remove the primary group of user"

Arguably, this could be a considered a bug with "groupdel", because I wasn't deleting the *only* primary group of the user. If `groupdel` allowed the deletion, the user still would have a primary group-- the new one with the same gid.  

It seems the solution that `groupdel` recommends though is to use the `--force` option, which is documented as being an override designed for cases like this. Here's the exact documentation for `--force` from `man groupdel`:

>  This option forces the removal of the group, even if there's some
user having the group as the primary one.

Ansible should support `force: true` for the `group` builtin, defaulting to false. When `true`, On Linux call `groupdel` with the `-f` option. 

Support using the longer `--force` flag was only fixed more recently (https://github.com/shadow-maint/shadow/pull/290). Since `-f` has been supported for longer, it should be used instead. 


### Issue Type

Feature Idea

### Component Name

group

### Additional Information

```yaml 
force: yes
```


### Code of Conduct

- [X] I agree to follow the Ansible Code of Conduct
cmd = [self.module.get_bin_path('pw', True), 'groupadd', self.name]
        if self.gid is not None:
            cmd.append('-g')
            cmd.append(str(self.gid))
            if self.non_unique:
                cmd.append('-o')
        return self.execute_command(cmd)
    def group_mod(self, **kwargs):
        cmd = [self.module.get_bin_path('pw', True), 'groupmod', self.name]
        info = self.group_info()
        cmd_len = len(cmd)
        if self.gid is not None and int(self.gid) != info[2]:
            cmd.append('-g')
            cmd.append(str(self.gid))
            if self.non_unique:
                cmd.append('-o')
        
        if cmd_len != len(cmd):
            if self.module.check_mode:
                return (0, '', '')
            return self.execute_command(cmd)
        return (None, '', '')
class DragonFlyBsdGroup(FreeBsdGroup):
    """
    This is a DragonFlyBSD Group manipulation class.
    It inherits all behaviors from FreeBsdGroup class.
    """
    platform = 'DragonFly'
class DarwinGroup(Group):