Optional method is method which can be applied if class generics has specific type. examples:
list.unzip //works only if this is collection of pairs
list.sum //works only if this collection of numbers
Currently I want implement regression method which has the same constraints as unzip(i.e. collection of 2d points) but I don't know how to make sure that method (implicit asPair: A => (A1, A2)
exsist and where the best place to define such conversions.