New run glue script
# What does this PR do?

This PR cleans up the `run_glue.py` script to use the Datasets library. Along the way it adds a few fixes in Trainer. The script supports all glue tasks as well as custom user tasks (passed along with a training and validation file in csv or json format). It has been tested on the following setups:
- single GPU
- multi-GPU with DataParallel
- multi-GPU with DistributedDataParallel
- TPU

The README has been updated to reflect the changes, there is just one breaking change from before which is that `data_dir` is not an accepted argument anymore (since Datasets will take care of downloading the data files).
Should we start thinking about automating the creation of the metadata block for the model's model card?

here for instance we'd already have this info:
```
---
datasets:
- mrpc
metrics:
- f1
finetuned_from: bert-base-cased
---
```<|||||>We could think of something like that and add a blank model card to be completed by the user in the final checkpoint. We could also include the results of the last evaluation if there is one.