Add BPE Wav2Vec2CTCTokenizer
### Feature request

Hi there!

Is there scope for a BPE (SentencePiece) CTC tokenizer? Using a trained SentencePiece vocabulary in a CTC model is pretty straightforward - all we need now is a tokenizer than can bridge the missing step between grouping CTC ids and decoding them with SentencePiece.

### Motivation

Grouping characters that occur commonly together is a cool way of sometimes helping with spelling mistakes (like a mini LM) and introduces dependence between characters which can help hold the model's hand.

As far as I know this is fully supported by pyctcdecode so no pipelines/LM processors, etc. need to change.

### Your contribution

The few changes would be something like

```python
def _tokenize(self, text):
        return self.sp_model.encode(text, out_type=str)
```
```python
def _convert_token_to_id(self, token):
    spm_id = self.sp_model.PieceToId(token)
    return spm_id
```

Additional SentenciePiece args would be similar to [other SentencePiece tokenizers](https://huggingface.co/docs/transformers/model_doc/xlm-roberta#transformers.XLMRobertaTokenizer), as would be the [saving of the tokenizer](https://github.com/huggingface/transformers/blob/2c8b508ccabea6638aa463a137852ff3b64be036/src/transformers/models/deberta_v2/tokenization_deberta_v2.py#L474).
cc @SaulLu @ArthurZucker <|||||>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.