Lodash _.where style removeAll and destroyAll syntax for observable arrays

Allows the argument to `observableArray.removeAll` and observableArray.destroyAll` to be an object.  In that case, objects will be removed/destroyed if their properties match all properties specified on the provided object.

So these two lines would be equivalent: 

```
array.removeAll({foo: x, bar: y});
array.removeAll(function (value) { return value.foo === x && value.bar === y });
```