Update variadic c0x code to compile with gcc pre 4.6
Update variadic c0x code to compile with gcc pre 4.6

Gcc pre 4.6 requires workarounds to get certain template expansion
expression to work correctly. I wonder If I will need to ifdef all
these use cases inside the code to make it nicer to read.

robertmaynard/Sandbox,robertmaynard/Sandbox,robertmaynard/Sandbox,robertmaynard/Sandbox