fix(isArrayLike): Correct logic in isArrayLike to screen out objects

- Fix ngRepeat check via isArrayLike check to prevent objects from
  accidentally passing as array-like

This addresses #8000 & #4751.
`isDefined(value)` would be more straightforward :smile: 
(Or just `value != null`, but I prefer the explicitness of the 1st alternative.)

Although this is a valid fix, I think it's better to have it in a separate PR, since it is totally unrelated to this PR.