Add POS tagging and Phrase chunking token classification examples
Author: vblagoje
Pull request: yes

This PR adds POS tagging and Phrase chunking examples to token classification examples. The current example (NER) is minimally adjusted to allow users to experiment with their token classification model training easily. Although experimenting with token classifications other than NER token classification is already possible for skilled developers, this PR lowers the barrier to entry even further and demonstrates HF extensibility. 

The adjustments made consist of: 

- extracting [TokenClassificationTask](https://github.com/vblagoje/transformers/blob/6caa8c1946fb9e3fb76fad081833805b25b182df/examples/token-classification/utils_ner.py#L69) superclass 
- implementing the specific task particulars (reading of InputExample etc.) in task [subclasses](https://github.com/vblagoje/transformers/blob/6caa8c1946fb9e3fb76fad081833805b25b182df/examples/token-classification/tasks.py) 
- "dynamic loading" of a task [subclass](https://github.com/vblagoje/transformers/blob/6caa8c1946fb9e3fb76fad081833805b25b182df/examples/token-classification/run_ner.py#L118) depending on the token classification task trained

I also noticed that:

- [NER dataset](https://github.com/vblagoje/transformers/blob/6caa8c1946fb9e3fb76fad081833805b25b182df/examples/token-classification/run.sh#L1) used is unavailable and should be replaced. I didn't replace it in this PR
- PL training needs to be slightly retrofitted to adjust for the latest PL's BaseTransformer master changes. I made the change to make sure my changes work for these new examples

If you think adding one rather than two token task classification example is enough (say POS tagging) let me know - I'll remove the other. Also, please let me know if any additional adjustments are needed. 


Comments:
Hi @vblagoje , thanks for adding this :+1: 

GermEval dataset is currently not available - it seems that they've relaunched the shared task website. This dataset removal will also affect libraries such as Flair or `nlp` so I will try to find another mirror, thanks for reporting it!

For PoS tagging it would be awesome if you could also report/output accuracy after training - just import `accuracy_score` from the `seqeval` package :)

Thanks for the review @stefan-it Let me know if there are any additional suggestions. Perhaps we can add appropriate URLs for the GermEval dataset and remove the chunking example if needed. 

This looks great, thanks! Note that there is a big rework of the examples to use the nlp library and Trainer in the pipeline. We're polishing the APIs before we start converting every script. I'll tag you when we get to this one to make sure we don't break anything.

In the meantime, could you take care of the styling issue so we can merge?

Ok @sgugger please do ping me and I'll make sure that all token classification examples work as expected, perhpas I can help with the transition. I am not sure why CI fails for styling, more specifically isort `ERROR: examples/token-classification/tasks.py Imports are incorrectly sorted.` It passes both on my working laptop and training machine. Could you please tell me how imports are incorrectly sorted in [tasks.py](https://github.com/vblagoje/transformers/blob/token_classification_examples/examples/token-classification/tasks.py) ?

It may be because of the dep you're adding to examples. It should probably be added in the `known_third_party` list [here](https://github.com/huggingface/transformers/blob/master/setup.cfg).

Ok @sgugger `check_code_quality` passes now, but there are other new failures. On a first look, they seem transient/unrelated to this PR? 

Looks flaky, re-triggered the CI