metadata: fix misaligned accesses to 64bit data

Unfortunately the journal entries are only aligned to 32 bit boundaries
but on some 64-bit RISC architectures (e.g. Alpha) this is insufficient
to guarantee correct alignment of 64-bit accesses. This is not a show
stopper but does cause inefficient traps to the kernel and pollution of
kernel logs.  Rather than fix the alignment we provide a helper function,
dependent on features specific to gcc, to correctly access a 64-bit datum
that may be misaligned.

https://bugzilla.gnome.org/show_bug.cgi?id=726456