Since many windows apps overuse the mouse, some enterprising people over at Autohotkey created a scripting language which allows one to script interactions with the windows GUI, bind keystrokes to those actions, and even call directly into a dll.
So far, I have a keymapping and systray notifier. The keymapping allows me to do things like map Capslock to Escape (freedom! all vim users should do this), launch an app and interact with it initially, conditionally map keystrokes to actions depending on the title of the active window, etc. The systray notifier just helps unify programs that either lack or have broken notification systems.
One problem I've seen with keymapping lies with the Alt key. As windows uses Alt as the modifier key to access the window menu, I get odd interactions sometimes where the Alt key is nabbed by windows and my Alt + 4 keycombination fails. I'll keep reading/debugging to find an answer for that one.