Add function to call a function with a cross-product of lists of arguments

Signed-off-by: Shea Levy <shea@shealevy.com>