Rather than relying on type checking, what about just checking for `#respond_to?(:call)`, opening this up to any `call`-able object?