title: Making ngModel fire $render even when bound to deeper objects or arrays
body: <p>When binding to to ngModel, if you have an object:</p>
  
  <pre><code>scope.someObj = { 
      prop: 10, 
      prop2: [20, 30], 
      subObj: {
          prop: 40
      } 
  }
  </code></pre>
  
  <p>and you attach it to some input fields like so:</p>
  
  <pre><code>&lt;input type="number" ng-model="someObj.prop" /&gt;
  &lt;input type="number" ng-model="someObj.prop2[0]" /&gt;
  &lt;input type="number" ng-model="someObj.prop2[1]" /&gt;
  &lt;input type="number" ng-model="someObj.subObj.prop" /&gt;
  </code></pre>
  
  <p>And put an event listener to the $render trigger of each of them, like so:</p>
  
  <pre><code>ngModel.$render = function() {console.log("Hello");};
  </code></pre>
  
  <p>The $render will only fire then the first input is edited, but never when the others are. Basically, the $render doesn't trigger on models bound to anything deeper than one level.</p>
  
  <p>Is there a way to force it to do so?</p>