Optimize the SIMD.js code generation

Two optimizations for discussion:
 1. generate Float32x4Array.getFloat32x4 and Float32x4Array.setFloat32x4 for memory load and store
 2. generate SIMD.type.shuffle and SIMD.type.shuffleMix for __shuffleVector 
shouldn't this be `>= 4`?