Add TypeVector::toDt to generate correct default initialiser for vectors

Given the code:
```
import core.simd;
float4 x;
```
The logic through VarDeclaration::toObjFile goes as such:
```
if (init)
 {
    /* init == NULL in the above so this is not hit. */
 }
else
  type->toDt(&s->Sdt);
```
Which because of Type::toDt, only the first element is set for the decl.
```
float4 x = +SNaN;
```
This harms gdc which expects the decl and initialiser size to match up almost always.  If the initialiser is smaller than the type, then the backend will fill the rest of the decl with zeroes when it comes to emitting the assembly.
```
float4 x = [+SNaN, 0, 0, 0];  // Wrong!
```

This change makes it so type->toDt generates the correct constructor.
```
float4 y = [+SNaN, +SNaN, +SNaN, +SNaN];
```