SI-6811 Remove scala.annotation.cloneable
Merge pull request #2641 from soc/SI-6811-cloneable-definition

SI-6811 Remove scala.annotation.cloneable
SI-6221 inference with Function1 subtypes.

There appears to be no upper bound on the number of places
we have to remove calls to typeSymbol and introduce calls to
baseType. This one was type inference for function parameter
types: worked when expected type was A => B, but not if there
was an implicit conversion from A => B to the expected type.