Fix an inference failure (fn found, different fn expected.)

For some reason the inference is tagging the `fn()` for the key-setup function
with the name of the setup function. So the type inferred for the expression can only
be satisfied by the first match-arm.

Adding a type-hint seems to resolve this issue.
Merge pull request #184 from drbawb/feature/fix-inference

Fix an inference failure (`fn found, different fn expected.`)