only check for formatters on instances

use inspect.isclass to disallow unbound methods, not type checking on the method itself.

closes #6080
clsoes #7003