В котлин система типов тут не при чем. Эта фигня с порядком инициализации вообще на типы никак не завязана.
Связана, вообще-то. Если что-то объявлено как ненулябельное (то есть, тип у переменной ненулябельный), но содержит нул и компилятор не ругнулся, то это как раз и значит, что у нас дырка в типизации.