FIX: Replace uses of <[T]>::get_unchecked_mut with raw pointer accessor
FIX: Replace uses of <[T]>::get_unchecked_mut with raw pointer accessor

This is a soundness fix w.r.t unsafe coding guidelines.

In some of the instances, `get_unchecked_mut() -> &mut T as *mut T` was
used in places where the element was potentially uninitialized.

This was a problem in push. (Not a problem in IntoIter next/next_back,
where the whole range we're iterating is initialized).

bluss/arrayvec