Call fn on all combinations of elements in LISTS, where first
element of each combination is from list1, second element of
each combo is from list2, etc. E.g.,
? (combinations '(a b) '(1 2 3) '(x y))
((B 3 Y) (A 3 Y) (B 2 Y) (A 2 Y) (B 1 Y) (A 1 Y)
(B 3 X) (A 3 X) (B 2 X) (A 2 X) (B 1 X) (A 1 X))