strided_ptr - looks like a pointer, but with optionally non-default strides
array_view, array_view_strided

array_view encapsulates non-owning ptr+length to an array with bounds.

array_view_strided encapsulates non-owning ptr+length+strides for a
strided array with bounds.
image_view - Encapsulate a reference to a 2D or 3D multi-channel image,
with strides.
Test array_view, strided_ptr, array_view_strided, image_view