Fix all matcher exception when actual not enumerable

When the action value of passed to the `all` matcher is not enumerable,
rather than failing to match and returning an error it raises an
exception. This commit ensures that `actual` is enumerable before
proceeding with matching.
I think the failure message should be:

```
expected "not enumerable value" to all be a String, but was not an enumerable
```

This indicates what the failed expectation was (the "expected" part) while also listing the failure reason ("but was not an enumerable").  We've got this pattern in quite a few other places:

https://github.com/rspec/rspec-expectations/blob/a72203a0384487c067bad5133e13a6b706803b63/lib/rspec/matchers/built_in/be_between.rb#L51-L53

https://github.com/rspec/rspec-expectations/blob/a72203a0384487c067bad5133e13a6b706803b63/lib/rspec/matchers/built_in/be_between.rb#L67-L69

https://github.com/rspec/rspec-expectations/blob/a72203a0384487c067bad5133e13a6b706803b63/lib/rspec/matchers/built_in/be_within.rb#L40-L42
https://github.com/rspec/rspec-expectations/blob/a72203a0384487c067bad5133e13a6b706803b63/lib/rspec/matchers/built_in/be_within.rb#L66-L68

https://github.com/rspec/rspec-expectations/blob/a72203a0384487c067bad5133e13a6b706803b63/lib/rspec/matchers/built_in/include.rb#L35-L43

https://github.com/rspec/rspec-expectations/blob/a72203a0384487c067bad5133e13a6b706803b63/lib/rspec/matchers/built_in/include.rb#L53-L56

Would be good for this to follow the same pattern.