MRG Make MDS compute proximity from input

This introduces a new parameter to MDS and changes the default behaviour, as I did it before in the "precomputed" PR.
What are other proximities that can be used? I only saw examples with euclidean distances.

I used the name ``proximity`` as it was used in the docstring before.
I don't like the name proximity for two reasons:
1) It's not used anywhere else
2) it is misleading imho. A distance is passed, so a high value means "far apart".  A high proximity means close together, right?

Should I rename it into "distance?" do we have any other algorithms that take dissimilarties?

@NelleV could you please have a look and voice your opinion? Thanks.
I didn't adjust the tests yet as I first wanted to get some feedback.

Closes #1390.