title: PyQt + custom QML object: Cannot read property 'x' of null
body: <p>Using PyQt + QML, it's pretty intuitive.  However I'm a little stumped.  The qml binding 'window.current.summary' complains with the error in the title <code>Cannot read property 'summary' of null</code></p>
  
  <p>Python:</p>
  
  <pre><code>class DataPoint(QObject):
      ....
      @pyqtProperty('QString')
      def summary(self):
          print("Retrieving summary: ", self._datapoint.summary)
          return self._datapoint.summary
  
  
  class Weather(QObject):
      ....
      @pyqtProperty(DataPoint, notify=forecastChanged)
      def current(self):
          return DataPoint(self._forecast.currently())
  
      @pyqtProperty('QString', notify=forecastChanged)
      def current_summary(self):
          return self._forecast.currently().summary
  </code></pre>
  
  <p>QML:</p>
  
  <pre><code>Weather {
      id: w1
  }
  
  Text {
      ...
      id: current_temp
      text: w1.current.summary
      // text: w1.current_summary // this works
  }
  </code></pre>
  
  <p>Think I've missed something obvious here.  I've verified that the 'current' property is indeed interrogated.  <code>Retrieving summary</code> is never seen, indicating to me that DataPoint itself is never interrogated.  How do we get that QML <code>w1.current.summary</code> to bind as expected?</p>