Switch to unaligned load/stores in the OpenMP backend.

While the alignment of the data structures has not changed the
instructions emitted by the underlying C compiler are now
of the unaligned variety.  Modern processors incur almost no
penalty for unaligned loads stores and so there is no discernible
performance degradation as a consequence of this change.  However,
it does allow for some quite gnarly code to be removed.