Cleanup logical memory handling to not depends on predicates

Loading and storing logical were dependign on functions from predicates
which was creating a circular dependencies and was in fact useless as
the regular unaligned_load<T>(U*) was doign the right thing.

The insert function was also fixed to not abuse r-casting to reference,
seemingly removing the old 64-bits load bug.
Reverted 4.6 workaround on native data storage

Last change on insert/load/store seems to have removed the need for
this costly workarund.

Note: If testing show a regression, we'll have to go back to the
old and slow code.
Add test for unaligned_load of logical