Kotlin generics Array<T> results in "Cannot use T as a reified type parameter. Use a class instead" but List<T> does not Kotlin generics Array<T> results in "Cannot use T as a reified type parameter. Use a class instead" but List<T> does not arrays arrays