I use sawfish. It is very lightweight, configurable, supports plenty of keyboard shortcuts and generally stays out of my way.
I have keyboard shortcuts for most simple operations (change workspace, change window, send to back, etc.) and use the mouse when that sort of thing makes sense. I try to stick to 'one task-type per workspace' which helps keep things somewhat organized (plus it keeps my browser in hiding while I'm trying to code).