Standardize semantic segmentation models outputs
# What does this PR do?

This PR standardizes the model outputs for semantic segmentation models and creates an `AutoModelForSemanticSegmentation` class. As discussed internally, models for semantic segmentation should return `logits` of shape `batch_size, num_labels, height, width`, one logit per pixel.

**Breaking change:** The `BeitForSemanticSegmentation` and `SegformerForSemanticSegmentation` models have logits with the same height and width as the input after this PR (instead of height/4 and width/4).

To maintain some level of backward compatibility, the `SemanticSegmentationModelOutput` has a field `legacy_logits` that users can pick to get the old logits value.

Another possible road to be less breaking is to create new classes `BeitForPixelClassification` and `SegformerForPixelClassification` while deprecating the current ones, then name "instance segmentation" "pixel classification" everywhere. It has the benefit of being more understandable to the beginner and look like our "ForTokenClassification" classes but it might surprise an expert more used to the "semantic segmentation" name.
_The documentation is not available anymore as the PR was closed or merged._