title: Kotlin nested property reference
body: <pre><code>data class House(var name: String = "House", var door: Door = Door())
  data class Door(var name: String = "Door")
  
  fun test() {
     val testHouse = House("My house", Door(name = "My door"))
  }
  </code></pre>
  
  <p>How could I get nested property reference nice and safe, ideally like this (this doesn't work though):</p>
  
  <pre><code>   val houseDoorName = House::door::name
     println(houseDoorName.get(testHouse)) //My door
  </code></pre>
  
  <p>I figured I could maybe do extension function, something like: <code>House::door.nested(Door::name)</code> but Im stuck with the implementation.</p>