Splits a list into matching and non-matching lists.
source list.
predicate function.
Pair of (matching, rest) lists.