Permute

Member functions for an array that allow one to permute, roll, and transpose axes.
Could change view so that it always returns a new array object pointing at the same data, never returning just a reference to the input.