Rewrite key input handler to be clearer.

Misc. improvements to layout of key input handler. Probably doesn't fix
any existing major bugs, but introduces several booleans that control
special cases that can later be hooked to device detection or settings,
and generally makes more sense.
Update minSdkVersion to 4.

The current code doesn't work on API 3 (1.5) any more, so update the
manifest to reflect this. If it gets fixed it can be changed back.
Deleted translations for long-deleted string to avoid harmless warnings
Hopefully fix the majority of keyboard issues.

It seems that the majority of keyboard issues were caused by quirks
implemented for the convenience of the HTC Dream (shift+numbers
generating function keys on the hardware keyboard and ctrl+numbers
generating function keys on the software keyboard). Turn these into
settings, which are disabled by default unless the device is indeed
a HTC Dream.

Also, add a setting (defaulting to on) which determines whether the
volume keys change the font size. Disabling this restores normal
volume control functionality.