add C++ mangling c_long and c_ulong

Similar to the c_long_double change.
Also changes the Elf mangling of `long` and `ulong` on 64 bit Elf to be `x` and `y`, so it won't conflict with the long mangling.
Likewise with Target::c_long_double, when would be front-end ever need to know this information?  (I can reason with the backend/glue needing this, however)