Move NoLayerEmbedTokens
As agreed upon with @patrickvonplaten , this moves the very useful, very model agnostic, `NoLayerEmbedTokens` to `modeling_tf_utils.py`, where it can be used by `TFBart` and `TFT5`.

`TFProphetNet` and other seq2seq may also eventually need.
`TFWrappedEmbeddings` is definitely way better, but as a user, I still don't understand what this means. Do you think we could add a comment where it's used? Maybe something along the lines of:

```
# Wraps layer to avoid problems with weight restoring and ensuring we're in the correct TF scope.
```<|||||>Done, thanks for writing it out!