goblas: optimize Ddot using SSE2 on amd64

Benchmark using Go 1.4 release on
Intel(R) Xeon(R) CPU E5-2660 0 @ 2.20GHz:

```
benchmark                          old ns/op     new ns/op     delta
BenchmarkDdotSmallBothUnitary      18.5          14.9          -19.46%
BenchmarkDdotSmallIncUni           23.4          21.5          -8.12%
BenchmarkDdotSmallUniInc           23.4          22.2          -5.13%
BenchmarkDdotSmallBothInc          23.1          21.4          -7.36%
BenchmarkDdotMediumBothUnitary     1344          504           -62.50%
BenchmarkDdotMediumIncUni          1690          1187          -29.76%
BenchmarkDdotMediumUniInc          1686          1177          -30.19%
BenchmarkDdotMediumBothInc         1717          1210          -29.53%
BenchmarkDdotLargeBothUnitary      134869        59336         -56.00%
BenchmarkDdotLargeIncUni           223717        163716        -26.82%
BenchmarkDdotLargeUniInc           189230        141713        -25.11%
BenchmarkDdotLargeBothInc          242719        203594        -16.12%
BenchmarkDdotHugeBothUnitary       15563100      9585254       -38.41%
BenchmarkDdotHugeIncUni            34440563      31152669      -9.55%
BenchmarkDdotHugeUniInc            26460880      21385974      -19.18%
BenchmarkDdotHugeBothInc           40452938      40136997      -0.78%
```

On my laptop with Go 1.5-dev and Intel(R) Core(TM) i5-4330M CPU @ 2.80GHz I got these numbers
(they are actually not very stable because of CPU scaling):
```
benchmark                          old ns/op     new ns/op     delta
BenchmarkDdotSmallBothUnitary      12.9          10.1          -21.71%
BenchmarkDdotSmallIncUni           16.5          16.1          -2.42%
BenchmarkDdotSmallUniInc           16.2          16.2          +0.00%
BenchmarkDdotSmallBothInc          16.2          16.0          -1.23%
BenchmarkDdotMediumBothUnitary     869           432           -50.29%
BenchmarkDdotMediumIncUni          1031          1021          -0.97%
BenchmarkDdotMediumUniInc          1027          1015          -1.17%
BenchmarkDdotMediumBothInc         1042          1022          -1.92%
BenchmarkDdotLargeBothUnitary      87156         44838         -48.55%
BenchmarkDdotLargeIncUni           230788        227383        -1.48%
BenchmarkDdotLargeUniInc           138736        129148        -6.91%
BenchmarkDdotLargeBothInc          335562        333651        -0.57%
BenchmarkDdotHugeBothUnitary       11050482      8906654       -19.40%
BenchmarkDdotHugeIncUni            28042141      27658908      -1.37%
BenchmarkDdotHugeUniInc            19012855      17787912      -6.44%
BenchmarkDdotHugeBothInc           34613451      34130483      -1.40%
```
I would be interested in what numbers other people get! Run:
```
go test -bench BenchmarkDdot  > old.txt
go test -bench BenchmarkDdot  > new.txt
go get golang.org/x/tools/cmd/benchcmp
benchcmp old.txt new.txt
```