This curry function takes in a function fn and
returns a curried version of it.
When the curried function is called with arguments,
it checks if the number of arguments is greater
than or equal to the number of arguments
the original function fn takes.