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.
Yes, I already updated my comment to do this. I just checked in Chrome, Firefox and IE9-11 - all of them print `0` for the following:
```js
(function () { console.log(Object.keys(arguments).length); })()
```