fix(ng-repeat): handle the ref changing to null and back

This was broken in commit 09871cb29b5345d49929895b2a490360eee69244.

If the ng-repeat expression changed from an iterable to a null,
ng-repeat would not notice it.  This would cause further bugs as it
would not reset its state and the ref became a collection again (i.e.
once out of sync, it was gone forever.)

Closes #1015