### Summary

I was surprised to after using Ansible to add some users to a group, that they had been removed from all other groups (crucially, including one used to grant them `sudo` rights!).



### Issue Type

Documentation Report

### Component Name

user_module

### Ansible Version

```console
nsible [core 2.11.5]
  config file = /redacted/git/devops-ansible/ansible.cfg
  configured module search path = ['/home/mark/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
  ansible python module location = /usr/lib/python3.9/site-packages/ansible
  ansible collection location = /home/mark/.ansible/collections:/usr/share/ansible/collections
  executable location = /sbin/ansible
  python version = 3.9.7 (default, Aug 31 2021, 13:28:12) [GCC 11.1.0]
  jinja version = 3.0.1
  libyaml = True
```


### Configuration

```console
N/A
```


### OS / Environment

Arch Linux

### Additional Information

I re-read the docs for the `user` built-in and it only mentions that the user will be *added* to groups mentioned in the groups list. The docs currently fail to mention that they will be removed from all groups *not* in the groups array.

I presume this behavior is as intended, but the docs should clarify that the user's non-primary groups will be set to exactly those in the list, any other pre-existing group memberships will be removed.

Here's a sample playbook that illustrated the behavior:

```yaml
---
- hosts: fave-server
  become: true
  become_user: root
  tasks:
    - name: "add users to some group"
      loop:
        - sue
        - john
      user:
        name: "{{ item }}"
        state: present
        groups:
          - some
```

Try having the users already exist with other group memberships and they will be removed and replace with only a `some` group membership. (I tested with Ansible 2.11.5). 

### Code of Conduct

- [X] I agree to follow the Ansible Code of Conduct
new_cls = get_platform_subclass(User)
        return super(cls, new_cls).__new__(new_cls)
    def __init__(self, module):
        self.module = module
        self.state = module.params['state']
        self.name = module.params['name']
        self.uid = module.params['uid']
        self.hidden = module.params['hidden']
        self.non_unique = module.params['non_unique']
        self.seuser = module.params['seuser']
        self.group = module.params['group']
        self.comment = module.params['comment']
        self.shell = module.params['shell']
        self.password = module.params['password']
        self.force = module.params['force']
        self.remove = module.params['remove']
        self.create_home = module.params['create_home']
        self.move_home = module.params['move_home']
        self.skeleton = module.params['skeleton']
        self.system = module.params['system']
        self.login_class = module.params['login_class']
        self.append = module.params['append']
        self.sshkeygen = module.params['generate_ssh_key']
        self.ssh_bits = module.params['ssh_key_bits']
        self.ssh_type = module.params['ssh_key_type']
        self.ssh_comment = module.params['ssh_key_comment']
        self.ssh_passphrase = module.params['ssh_key_passphrase']
        self.update_password = module.params['update_password']