Core functional combinators and higher-order functions — with some support for variadic functions