Reorder header members, align data

- Changed the order of members in the PiiMatrixData structure so that
  64-bit values (on 64-bit archs) can be aligned to 8 bytes without
  padding.
- Changed internal allocation so that data is always aligned to 8 bytes.