Support for torch-lightning in NER examples
Update of https://github.com/huggingface/transformers/pull/2816

This PR creates a new example coding style for the pytorch code.

* Uses pytorch-lightning for the underlying training.
* Separates out the base transformer loading from the individual training.
* Moves each individual example to its own directory.
* Move the code in the readme to bash scripts.
The only two new files are run_pl_ner.py and transformers_base.py.

The goal is to keep the same format as the original command-line. Most of the argument names are preserved. I have verified that for NER the results of the same on GPU.

There are several nice benefits of lightning -> somewhat nicer logging and library integration (e.g. wandb), auto-checkpointing. Mostly the goal though is code readability with identical functionality.

Tests I ran:

* make sure that the test results are identical.
* print test results after training.
* test multi-gpu and apex (multigpu gives a nice speedup)
# [Codecov](https://codecov.io/gh/huggingface/transformers/pull/2890?src=pr&el=h1) Report
> Merging [#2890](https://codecov.io/gh/huggingface/transformers/pull/2890?src=pr&el=desc) into [master](https://codecov.io/gh/huggingface/transformers/commit/0dbddba6d2c5b2c6fc08866358c1994a00d6a1ff?src=pr&el=desc) will **not change** coverage.
> The diff coverage is `n/a`.

[![Impacted file tree graph](https://codecov.io/gh/huggingface/transformers/pull/2890/graphs/tree.svg?width=650&token=9qOlN6Hb1c&height=150&src=pr)](https://codecov.io/gh/huggingface/transformers/pull/2890?src=pr&el=tree)

```diff
@@           Coverage Diff           @@
##           master    #2890   +/-   ##
=======================================
  Coverage   75.06%   75.06%           
=======================================
  Files          94       94           
  Lines       15288    15288           
=======================================
  Hits        11476    11476           
  Misses       3812     3812
```



------

[Continue to review full report at Codecov](https://codecov.io/gh/huggingface/transformers/pull/2890?src=pr&el=continue).
> **Legend** - [Click here to learn more](https://docs.codecov.io/docs/codecov-delta)
> `Δ = absolute <relative> (impact)`, `ø = not affected`, `? = missing data`
> Powered by [Codecov](https://codecov.io/gh/huggingface/transformers/pull/2890?src=pr&el=footer). Last update [0dbddba...8f8137f](https://codecov.io/gh/huggingface/transformers/pull/2890?src=pr&el=lastupdated). Read the [comment docs](https://docs.codecov.io/docs/pull-request-comments).
<|||||>@LysandreJik 
This implementation does not work with `pytorch_lightning` > `0.7.1`.

It throws the exception `'Trainer' object has no attribute 'avg_loss'` because since version `0.7.2` they removed the `avg_loss` field from the `Trainer` class.

See https://github.com/huggingface/transformers/pull/2890/files#diff-d68a6ecfacd8231c59af0ea67d77bb9cR120<|||||>@simonepri can you file an issue? I guess we should just remove that key/value pair. <|||||>@simonepri did you try 0.7.5? 