John Staple
Although Professor Staple is tough, he's clearly very knowledgeable on the subject. He is more than happy to clarify any topic that you are having trouble with, but you have to approach him about it (and make sure it is not a silly question... he doesn't like those). I would recommend him, but be prepared to dedicate lots of time!