Enhance calibration plots

### Describe the workflow you want to enable

I would like to enhance calibration plots by adding these new aspects:
1. Plot bins as vertical lines in the background.
2. Equal aspect on both axis to have a square figure and enable easier visual comparisons.
3. Changing xlabel from "Mean predicted probability" to "Mean confidence scores" or "Confidence scores" or similar, to avoid confusion between scores output by classifiers and true posterior probabilities.
4. Integrate a visualization of the density to see where the mass is on the calibration curve. This is important as a calibration curve can appear very bad in some part whereas it can be due to a low number of samples in this part, and actually have a good Expected Calibration Error. Several choices are possible as described in the proposed solution section.
5. Edit: add support for multiclass calibration plot by either looking at the class-wise calibration (considering one of the classes as the positive one) or the top-label problem (binarizing the multiclass problem with the prediction taken as the argmax of the confidences, a positive label iff the prediction is right and an associated confidence given by the maximum of the confidences). These are 2 of the 3 definitions of calibration in the multiclass setting.

### Describe your proposed solution

To address the previous points, I propose to:
1. Update `CalibrationDisplay`.
2. Idem
3. Idem
4. Several choices are possible here. Either adding an histogram on each edge as in the figure below. Or adding a single histogram on the confidence scores axis (either on the edge or integrated in the background of the calibration plot) since the density on the "fraction of positive" axis is less informative as the one on the confidence scores axis. This last option might be better. Also, this feature might be restricted to a single calibration curve only as it might become illegible with several classifiers.
5. Edit: This could be done by adapting the `_get_response` to allow y_pred.shape[1] > 2 and either choosing one of the K class as the positive one, or the top-label one.

Should this change be approved, I would be willing to work on it.

Example with histograms on the edges:
<img src="https://user-images.githubusercontent.com/33580936/174766358-56fc2afa-5452-4318-b0cb-18caf1b2a004.jpg" alt="drawing" width="400"/>

### Describe alternatives you've considered, if relevant

_No response_

### Additional context

_No response_

COMMENT:
Here is a draft of what can be obtained with minimum changes on the `CalibrationDisplay` class and `calibration_curve` function (see #23748). I focused on histograms for now, other features such as labels are temporary.

For now, stacking is not supported. I think it would require much deeper changes to the `CalibrationDisplay` class as for now the class updates the plot on the fly and does not store anything from previous actions (hence the axis created to plot the histogram is lost from one call to another). A solution would be to stack all data in the `CalibrationDisplay` class (e.g. with successive calls to a `from_estimator` method), and then call the `plot`method only once to plot all the necessary elements. This would require API changes. The advantage is that it would allow to decide a posteriori if an element can be plotted (e.g. the vertical bar for bins can be plotted if bins of all classifiers are equal, or histograms can be plotted if less than ~5 classifiers are stacked, otherwise illegible).

What do you think?

![test_calibration_display_example](https://user-images.githubusercontent.com/33580936/175540482-a67ddcee-c457-420f-b311-db43cea667bd.png)

With quantile binning (might disable histogram in this case):
![test_calibration_display_example](https://user-images.githubusercontent.com/33580936/175545139-b9ed3fb8-5540-4656-8c7b-9b8341960a86.png)

Labels: New Feature, module:calibration