Re: Control or Alt
You have to take this in perspective.
The standard control key settings for terminal applications come waaay before any windowing systems.
The standard control-c, control-u, control-s, control-q etc. date back to UNIX Edition 7, VAX and RSX-11 terminal sessions (and probably other systems with asynchronous terminals).
At the time, 7 bit (or sometimes 8-bit) ASCII was the only way to go for communication between the terminal and the application/tty driver. This was before ANSI X3.64.
What the Ctrl key did was to take the bit value of the key, and zero the top two or three bits (depending on 7 or 8 bit character length) to leave a character with a value between 0 and 31. So Ctrl-A became 0x01, Ctrl-B became 0x02 etc, with the characters between 27 and 31 being a bit of a free-for-all depending on the terminal manufacturer and/or country that the keyboard was for.
For some terminals, the arrow keys generated single control characters. 0x7F was normally reserved for the Del. or Delete key, and was sometimes used as the interrupt character (Unix Edition 6).
Because there was little standardization between terminal manufacturers, not every terminal had function keys, cursor keys (this is why vi used HJKL) or even a control key. A very standard terminal used was the Lear Siegler ADM3.5A, look it up and see how sparse that keyboard was!
So when windowing terminal emulators started re-using these keys, it was really those programs that were at fault. And Windows, which had to be different, was one of the major culprits. At the time, the PC keyboard was pretty standardised, and they could easy have used dedicated keys for Cut and Paste, and other functions.