Small inconsistency in tokenization_utils for special tokens retrieval
Hi there,

This is just a minor issue I have spotted.
When a special token (cls_token, sep_token, etc.) is accessed in an instantiated Tokenizer, this is the piece of code executed to retrieve the property:

```python
    @property
    def eos_token(self) -> str:
        """
        :obj:`str`: End of sentence token. Log an error if used while not having been set.
        """
        if self._eos_token is None and self.verbose:
            logger.error("Using eos_token, but it is not set yet.")
            return None
        return str(self._eos_token)
```

The None check is tied to the verbose flag, so when the verbose flag is set to False the condition is not triggered, and even if the special token is None, a 'None' literal string is returned (the last line).
It happens the same for all the special tokens, leading to unexpected behavior if you are expecting an actual None outside the tokenizer. I think that the "verbose" flag and the "is None" should be checked in separated conditionals.

The mentioned code can be located at:
https://github.com/huggingface/transformers/blob/master/src/transformers/tokenization_utils_base.py#L949

Thank you very much.
 
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/master/CONTRIBUTING.md) are likely to be ignored.