A proposed IEnumerableWithCount<T> interface to sit between IEnumerable<T> and ICollection<T>