Effective visibility mechanism introduced. Local is considered as public, java protected as Kotlin protected, java package private as Kotlin private.
It provides also a fix for KT-7585 (empty type intersection assertion). A set of relevant tests, one fixed test