title: $watchCollection not working on array
body: <p>I'm using $watchCollection to watch for changes in an array length. But it doesn't seem to work when I add any item onto the array. Where am I going wrong ?</p>
  
  <pre><code>var app = angular.module('plunker', []);
  
  app.controller('MainCtrl', function($scope) {
  
    $scope.count;
    $scope.Items = {
        "Cars" : [
            {
                "id" : 1,
                "name" : "Mercedes"
            },
            {
                "id": 2,
                "name" : "Ferrari"
            }
  
        ],
        "Bikes" : [
             {
                "id" : 1,
                "name" : "Ducati"
            },
            {
                "id": 2,
                "name" : "Yamaha"
            } 
  
        ]
    }
  
    $scope.addCar = function() {
      $scope.Items.Cars.push({
          'id' : 3,
          "name" : "random name"
      })
    }
  
    $scope.$watchCollection($scope.Items.Cars, function(newNames, oldNames) {
      $scope.count = $scope.Items.Cars.length;
      console.log($scope.count);
    })
  
  });
  </code></pre>
  
  <p>Demo : <a href="http://plnkr.co/edit/dSloJazZgr3mMevIHOe8?p=preview" rel="nofollow">http://plnkr.co/edit/dSloJazZgr3mMevIHOe8?p=preview</a></p>