Allow Enumerables to be used with "where" filter.

Follow-up PR to #2980

Allows objects that are `Enumerable` to be used with the `where` filter. I've included a test to properly handle filtering a Hash of Objects. If there is any other functionality or test that isn't covered, please let me know and I can include.
Yes, perfect! Would you mind also checking the return value? It probably won't come back as a hash, will it? It'd come back as `['a', {'color' => 'red'}]` presumably.