fix(filterFilter) deeply-nested predicate objects + multiple conditions were not giving expected results

Request Type: bug

How to reproduce: 

http://plnkr.co/edit/Yd705mYbqKJ3n79TXLmx?p=preview

Component(s): misc core

Impact: medium

Complexity: small

**Detailed Description:**

Fixes current `filterFilter`'s implementation (introduced in 1.2.13 as a result of #6215) for **deeply-nested predicate objects** + **multiple conditions** scenarios.

Problem: when using deeply nested predicate objects, `filterFilter` is currently behaving as if it was using _OR_ operators (i.e. it doesn't matter if some conditions don't match as long as one does), and should be behaving as if it used _AND_ operators in order to be consistent with the original implementation for non-deeply-nested predicate objects.


Or if you like,

```js
return (''+obj).toLowerCase().indexOf(text) > -1;
```