[MRG] Refactor and clean IsotonicRegression

Refactor and clean IsotonicRegression:

* Rename ``X`` to ``x`` to properly reflect that input is a vector, not matrix
* Refactor the ``y=isotonic_regression(...)`` logic into ``_build_y``
* Refactor the ``interp1d`` logic into ``_build_f``
* Store ``f=interp1d(...)`` so that it is not re-calculated on each call to ``transform``

Sorry about the last one, @agramfort.  Reset and sync'd.
I agree that returning and using `order_inv` in `fit_transform` is useful. My comment just highlights that the `order_inv` local variable is unused in `fit` hence we could just skip that local variable assignment in `fit` without changing the `_build_y` method itself nor its usage in `fit_transform`.