Change load_one_to_xxxx template parameter to simplify usage
Simplify some memory-related templating
Move some pointer casting closer to where it's actually needed
Use movdq* instead of movq to load from memory in merge
Rename epi128 -> si128 in custom simd memory operations.

For consistency with standard intrinsics
Optimize mt_merge a bit

Code provided by innocenat
Fix pointer casting in simd load