Add union function to API.

is the ordering guaranteed here? do you need to add `:in-any-order`?