Missing head_mask and decoder_head_mask arguments in encoder-decoder models
# 🚀 Feature request

Following the PRs #9569, #9634 and #9639, there are other encoder-decoder models, which either do not support `head_mask` and `decoder_head_mask` input arguments at all or can be only provided with a single `head_mask` argument used for head masking both in encoder and decoder. It would be, therefore, nice to make this feature uniform over all the decoder-models.

<hr>

**Models:**

| Model | Pytorch | TensorFlow | PR | Copy dependency |
| ------ | :------: | :---------: | :--: | :-----: |
| BERTGeneration | ☑️  | ✖️  | - | - |
| EncoderDecoderModel | ☑️  | ✖️  | - | - |
| FSMT | ✅ | ✖️  | #9819 | - |
| LED | ✅ | ☑️ | PT - #9856 ; TF - #9988 | - |
| ProphetNet | ☑️  | ✖️  | #9964 | - |
| Longformer | ✅  | ☑️  | PT - #9856; TF - #9988  | LED |


## Your contribution

I'm happy to add this feature in the following days, both for PyTorch and TensorFlow models. (Likely in shorter PRs in order not to create large, overwhelming PRs)

<hr>

Reviewers: @patrickvonplaten, @jplu, @sgugger, @LysandreJik, @stas00 .