Correct VARIANT struct size

VARIANTs have sizeof 16 in 32-bit and 24 in 64-bit. I'm not sure of the
use of Val2 now, but this at least prevents memory corruption.

See https://code.google.com/p/go/issues/detail?id=8293 for more details.
Merge pull request #20 from mjibson/variant-fix

Correct VARIANT struct size