more progress getting rid of Array<T> mutator logic