added a semi-plausible currying  function
Merge branch 'dev' of https://github.com/rgrannell1/arrow into dev
added type signatures, updated variable names, and simplified corner-cases so that NULL is treated exactly like list() or [A](0)