Refactor filter specs

There was a lot of duplication. Now there's less.

The logic of some of them (Array, Hash, Model, and Time) changed in
subtle but unimportant ways.
Refactor base filter spec
Remove useless comments
Simplify OverloadHash#hash