Fix EncoderDecoderModel classes to be more like BART and T5 (#14139)
* First draft
* Make tuple output more readable
* Replace assertions by value errors
* Make it possible to predict_with_generate for vision and speech models
* Adapt Seq2SeqTrainer to work with VisionEncoderDecoder/SpeechEncoderDecoder
* Add deprecation warning
* Add copied from statements to vision and speech encoder decoders
* Fix failing test
* Apply @patrickvonplaten's suggestion
* Use reshape instead of view for consistency