PPC Altivec little endian support

The PPC Altivec implementation assumes big endian byte ordering and produces wrong results on PPC64LE Linux. The Altivec support code needs to be refactored and abstracted to support little endian data layout and little endian Altivec operations.