feat($rootScope): Add custom compare and copy functions to $watch

Closes #10069
Maybe if objectEquality is not a function, we could set angular.equals as the comparator function to avoid checking if comparator is undefined for each $digest cycle ?

Same for copier and angular.copy.