title: $watchCollection() with Nested Arrays
body: <p>I have a nested array of the form :</p>
  
  <pre><code>$scope.itinerary = 
      [
          [
            {name:'x'},
            {name:'y'},
            {name:'z'}
          ],
          [
            {name:'a'},
            {name:'b'},
            {name:'c'}
          ]
      ]
  </code></pre>
  
  <p>And I am doing a $watchCollection using the following :</p>
  
  <pre><code>$scope.$watchCollection(function () {
              return $scope.itinerary;
          }, 
          function () {
              console.log("Changed")
          }
  );
  </code></pre>
  
  <p>But the <code>console.log()</code> is only executed if one of the sub array is deleted or a new array is inserted. If I move an element from One array to another, nothing happens. (eg when I move <code>{name:'a'}</code> from one array to another, nothing happens). How do I put a watch on the nested Array ?</p>