added a dot product to profiling and modified the load and store primitives in ssa-to-rssa

I plan to add a few more profiling functions but the dot product runs
about as fast as sml, so either thats the overhead of calling c or
I need to write a better dot product.

I wrote new code to translate the to/fromArray primitives to rssa
by first calculating the offset using a wordMul before actually
getting the array offset. This should solve the problem of the
8x limit for scale.