feat(ngRepeat): Add "watch with" option to track added, moved, and removed elements

The feature makes it easier to perform animations and other operations on the entire set of changed elements rather than processing them individually. The optional watch function is passed an array of added, moved, and removed elements when any changes are made to the bound collection.