Port IRBuilder::CreateVectorSplat
Check SIMD vector types
Add core::simd and define SIMD vector types
Add SIMD vector type tests
Remove trailing whitespace
Generate LLVM SIMD vector types
Move core::simd to core::unstable::simd
auto merge of #6214 : sanxiyn/rust/simd-2, r=graydon

At the moment this only includes type checking and there is no code generation support yet. I wanted to get the design reviewed first.

From discussion with @graydon at #5841, re-implemented as `#[simd]` attribute on structs.

Progressing towards #3499.