Permit any callable, not just a function, for format

For instance, a class that implements a `__call__` method is also fine.
Add unit test for callable object format argument
Add changelog entry for #2313
Document that Table.format can accept a callable object
Merge pull request #2313 from lpsinger/callable_format

Permit any callable, not just a function, for format