Fix _.intersection to take intersection with a none array

In terms of set operations it seems that underscore sees none array arguments as a set with a single member.

```javascript
_.union([1], [2])
// => [1, 2]
_.union([1], 2)
// => [1, 2]

_.difference([1, 2], [1])
// => [2]
_.difference([1, 2], 1)
// => [2]
```
But `_.intersection` act differently:

```javascript
_.intersection([1, 2], [1])
// => [1]
_.intersection([1, 2], 1)
// => []
```

The suggested change seems can fix the problem.