only check for formatters on instances

use inspect.isclass to disallow unbound methods,
not type checking on the method itself
remove _valid_formatter

check in _safe_get_formatter_method

- reject classes
- allow any callable...
- ...except on objects that lazily produce callables at any attribute
Merge pull request #7006 from minrk/valid_formatter

only check for formatters on instances