References
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/valueOf https://stackoverflow.com/questions/18066322/closure-in-javascript-whats-wrong/18067040#18067040 https://stackoverflow.com/questions/5832891/variadic-curried-sum-function