Implement partition(arr, predicate)
Write partition(arr, predicate) that splits an array into a tuple of two arrays: [itemsThatPass, itemsThatFail], preserving relative order within each.
partition([1, 2, 3, 4, 5], (n) => n % 2 === 0); // [[2, 4], [1, 3, 5]]