Stripped out all of the avoidvirtregs code for now, as it wasn't well thought out wrt to wide types.
Made the C generation a lot more sane and less error-prone.