fix($rootScope): ignore properties beginning with `$` in $watchCollection object mode

I'm not too keen on this, I think we want to fix angular.equals() to only ignore double-dollar-signs $$, which would make a lot more sense to do in $watchCollection. Up to you @petebacondarwin.

---

Make behaviour of $watchCollection (for non-ArrayLike objects) consistent with angular.equals, used by $watch when objectEquality flag is set to true.

BREAKING CHANGE:

Previously, enumerable properties beginning with `$` would be taken into consideration. Now, they are simply ignored.

Closes #10426