[WIP - Don't merge yet][Pipeline] Make "task" a static class variable
Author: patrickvonplaten
Pull request: yes

This PR removes "task" from the "init" of the class and adds it as a static variable.
In my opinion, it is cleaner to have "task" as a static variable instead of an object attribute. This would also solve #5210 .

The problem we would run into then is that for the "Translation" pipeline we would need a class for each translation. I think this is still the better option though because it is less prone to errors (see #5210) and we could add a "get translation factory design" or something.

After some discussion with @mfuntowicz, I think the best option is to add two additional 
parameters `src_lang` and `tgt_lang` to the pipelines function and delete the task names 
`translation_en_to_fr` in favor of just `translation`. 

The new recommended way of instantiating a translation pipeline is 

```python 
translation_en_to_fr = pipeline("translation", src_lang="en", tgt_lang="fr")
```

The option:
```python 
translation_en_to_fr = pipeline("translation_en_to_fr")
```

is still supported with a future warning.

@mfuntowicz @julien-c @LysandreJik @sshleifer 
What do you think?

**Backward Compatibility**

It should be fully backward compatible, but I added some warning statements to let the user know of Future Depreciation

### TODO:
If this PR is ok for you, I will update the docs and add tests.

Comments:
Just noticed that this would break the Marian translation pipeline though. Maybe for the Translation pipeline we should keep the "task" as an `__init__` argument. 

# [Codecov](https://codecov.io/gh/huggingface/transformers/pull/5216?src=pr&el=h1) Report
> Merging [#5216](https://codecov.io/gh/huggingface/transformers/pull/5216?src=pr&el=desc) into [master](https://codecov.io/gh/huggingface/transformers/commit/1ae132a07d7f294cf58cd50f7db8723d00e282de&el=desc) will **decrease** coverage by `0.36%`.
> The diff coverage is `94.11%`.

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

```diff
@@            Coverage Diff             @@
##           master    #5216      +/-   ##
==========================================
- Coverage   77.49%   77.12%   -0.37%     
==========================================
  Files         138      138              
  Lines       23787    23815      +28     
==========================================
- Hits        18433    18368      -65     
- Misses       5354     5447      +93     
```


| [Impacted Files](https://codecov.io/gh/huggingface/transformers/pull/5216?src=pr&el=tree) | Coverage Δ | |
|---|---|---|
| [src/transformers/pipelines.py](https://codecov.io/gh/huggingface/transformers/pull/5216/diff?src=pr&el=tree#diff-c3JjL3RyYW5zZm9ybWVycy9waXBlbGluZXMucHk=) | `77.21% <94.11%> (+0.80%)` | :arrow_up: |
| [src/transformers/data/processors/squad.py](https://codecov.io/gh/huggingface/transformers/pull/5216/diff?src=pr&el=tree#diff-c3JjL3RyYW5zZm9ybWVycy9kYXRhL3Byb2Nlc3NvcnMvc3F1YWQucHk=) | `28.66% <0.00%> (-28.03%)` | :arrow_down: |
| [src/transformers/tokenization\_bert.py](https://codecov.io/gh/huggingface/transformers/pull/5216/diff?src=pr&el=tree#diff-c3JjL3RyYW5zZm9ybWVycy90b2tlbml6YXRpb25fYmVydC5weQ==) | `90.45% <0.00%> (-0.83%)` | :arrow_down: |
| [src/transformers/tokenization\_utils.py](https://codecov.io/gh/huggingface/transformers/pull/5216/diff?src=pr&el=tree#diff-c3JjL3RyYW5zZm9ybWVycy90b2tlbml6YXRpb25fdXRpbHMucHk=) | `94.81% <0.00%> (-0.38%)` | :arrow_down: |

------

[Continue to review full report at Codecov](https://codecov.io/gh/huggingface/transformers/pull/5216?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/5216?src=pr&el=footer). Last update [1ae132a...e487570](https://codecov.io/gh/huggingface/transformers/pull/5216?src=pr&el=lastupdated). Read the [comment docs](https://docs.codecov.io/docs/pull-request-comments).


LGTM! Thanks @patrickvonplaten 🙏 

@sshleifer - can you check if this is fine for Marian translation?

Close this for now -> Pipelines will be updates when working on Pipelines v2 with @mfuntowicz