Experimental varargs fix

As the title says, this is an **experimental** fix for the varargs horror (see https://github.com/ldc-developers/ldc/issues/702, https://github.com/ldc-developers/ldc/issues/172, https://github.com/ldc-developers/ldc/issues/73 and https://github.com/ldc-developers/druntime/pull/14).
It seems to be working fine on Win64 in combination with the ```core.vararg``` and ```core.stdc.stdarg``` patches from https://github.com/ldc-developers/druntime/pull/14.
Our CompositeToInt rewrite is currently restricted to the actual type having the same size as the integer, so we can't use that one. Structs of size 3, 5, 6, 7 are handled by toArgTypes() (=> next bigger int, for 64-bit targets only).