@amWhy: I noticed you deleted
this. I don't see what's wrong with it at all, and can't understand the downvote. In fact, I think your answer is the best answer, because it uses weaker equivalences first... If you decide to undelete it let me know so that I can upvote it, though maybe you could also change the last bit to p→q ≡ ¬p∨q. =)