3) Natural binding for C-z
Bind C-z by default to this function:
(defun undo-or-suspend-emacs ()
"Undo if we're in a windowing system, or suspend emacs if we're in a TTY"
(interactive)
(setq this-command (if window-system 'undo 'suspend-emacs))
(call-interactively this-command))
Adopting this binding will ensure Emacs has the most natural and common
behavior on C-z for a given environment. Besides, not much of value is
lost: why bother with C-z in a windowing system when the system probably
provides its own idiomatic way of minimizing a window?