add true option for dependent matcher and test all options

Added test to ensure that all valid `:dependent` options are permitted to fix #393. Also added a `true` option that accepts any `:dependent` option. This is useful when you're testing that all `has_many` or `has_one` relationships have a `:dependent` option set.
Why do you have default values here? Why not just `def correct_for(dependent)`?