pub fn run_length_encoding<T, I>(iter: I) -> Vec<(T, usize)>where T: Clone + PartialEq, I: IntoIterator<Item = T>,
return: [(elem, length)]