Execute the first function that matches the given arguments
https://github.com/kalekundert/signature_dispatch/