Split `curry` into two functions

`curry :: (* -> a) -> (* -> a)` for normal usage
`curryN :: Number -> (* -> a) -> (* -> a)` for variadic functions

Discussed in https://github.com/CrossEye/ramda/pull/319.