lang.isArrayLike should return bool for falsey arguments and various other is*

As pointed out by @davidchambers (https://github.com/CrossEye/ramda/issues/237#issuecomment-51707816)

Fixes:
```js
dojo.isArrayLike("") // => ""
dojo.isArrayLike(0) // => 0
```
The failed test is this (and the following). Currently this returns true. Should it return true or false (noting length refers to frames)