Added the Array.permute() method;
Various optimizations;