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

(cherry picked from commit a42508a8ba3f0cba2b62c138f242461e302e96df)

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

Conflicts:
	lib/lists.nix