Add a TF in-graph tokenizer for BERT
Hey all! I've done some testing and the in-graph BERT tokenizer is now yielding the same outputs as our tokenizers, even for multi-part texts where we need to concatenate and get `token_type_ids` right. There's still several things left to do before this is ready, but I figured now is the time to lay it out and get some feedback!

Left to do:

- [x] Add input normalization
- [x] Is texts_a / texts_b the right way to handle inputs? Should it just be a multidimensional tensor?
- [x] Should this be a complete class rather than reading attributes from an existing tokenizer?
- [x] Add imports and maybe some kind of AutoModel to make this findable by users
- [x] Add dependency for tensorflow_text and import checks
- [x] Do we need to change the name? Most TF users will still want the normal tokenizers
- [x] Add tests, particularly one with a full model and one with saving to savedmodel, as these are main use cases
- [x] Currently always pads to max length - this should be an option
- [x] Add documentation
- [ ] Consider adding docs on how to add other TF tokenizers, so we can see if users want to add them once we have a framework in place?
_The documentation is not available anymore as the PR was closed or merged._<|||||>@sgugger @gante I'm happy with this PR now, so I'm ready for a final review! Also, the tests are slightly slow (~1min for the whole test suite on a single core). Should I mark some of them as `@slow`, or will they only be run nightly and when a PR affects the BERT directory anyway?