wrote some basis tests for simd word functions, worked on native codegen, having issues in register allocation

I essentally converted the simd real tests into simd word tests, changing
things where needed. While it still only works with the c codegen it does
word, so thats good.

As for the native codegen I get a register spill error, I think this has
to do with a mismatch of sizes someplace but I'm not 100% sure. I tried the
places that seem obvious to me but I think the issue either relates to something
I don't understand or is someplace I haven't thought to look.