pub fn split_coeluting(hills: Vec<Hill>, config: &HillsConfig) -> Vec<Hill>
Apply co-elution splitting to a list of hills using the persistence splitter (despike + smooth + robust-max threshold + valley merge).