Make MV a value class and independent of the monad used