catch_warnings blocks more robust

Explicitely calling clean_warning_registry before with block.
Fix for #3494 
Ah. It's the class that is deprecated. So use `assert_warns(DeprecationWarning, Ward).fit(..)`. As you can see, `assert_warns` is also more specific about what is doing the warning.