Argument promotion pass

Promote call-by-value arguments to registers.
Currently this only applies to structs. A mem2reg
pass and globaldce pass are ran after the
promotion to get rid of unneeded allocas and
dead function prototypes. Potentially, we can
now remove invocation of opt from the GPUVerify
script.
Fix CUDA entry point detection