BertTokenizer.save_vocabulary does not save the full vocab
### System Info

The current version still has the issue.

The [documentation](https://huggingface.co/transformers/v4.8.2/model_doc/bert.html?highlight=berttokenizer#transformers.BertTokenizer.save_vocabulary) states that `save_vocabulary` "save[s] only the vocabulary of the tokenizer **(vocabulary + added tokens)**" but the [code](https://github.com/huggingface/transformers/blob/e45e756d22206ca8fa9fb057c8c3d8fa79bf81c6/src/transformers/models/bert/tokenization_bert.py#L358) only deals with the vocab. I believe changing this line to:
```
for token, token_index in sorted(dict(self.vocab, **self.added_tokens_encoder).items(), key=lambda kv: kv[1]):
```
would solve it.

### Who can help?

@ArthurZucker @younesbelkada 

### Information

- [ ] The official example scripts
- [ ] My own modified scripts

### Tasks

- [ ] An officially supported task in the `examples` folder (such as GLUE/SQuAD, ...)
- [ ] My own task or dataset (give details below)

### Reproduction

Running `save_vocabulary` as is reproduces the issue.

### Expected behavior

The full (new) vocabulary should be saved to file.
Hey! Not sure which part of the documentation says that, but it is in the wrong! The additional special tokens are saved somewhere else, and properly handled. `Bert` is also one of our core model, but also an old one, which is why the doc might  not be up to date. When loading the vocab, only the actual vocabulary is expected. 
Tell me if this does not solve your confusion! <|||||>This issue has been automatically marked as stale because it has not had recent activity. If you think this still needs to be addressed please comment on this thread.

Please note that issues that do not follow the [contributing guidelines](https://github.com/huggingface/transformers/blob/main/CONTRIBUTING.md) are likely to be ignored.