I always say that the person that coined the phrase "terrible twos" simply didn't have a 3 year old yet. 3 is a hard age for me because I simply won't tolerate defiance.
Carrie, it sounds like you are very patient and you will do well in any stage if you stay that way. I could NEVER allow a child to get away with being angry over the color of their glass and I don't allow children to touch food in my kitchen unless it's on their plate. These are just my quirks. I insist on kids keeping their emotions in check or they can go and have their meltdown in private in their bed, room, crib, whatever.
In general I think it's ok to be accommodating with our children to avoid fits. But I have a big problem with doing this coupled with re-direction and I'll tell you why. When a child hits around age 5-8, leaning towards 8 but some start way early, they decide that it's our job to negotiate with them on every front. I consider myself a fairly strict mom. And it boggles my mind when my girls all hit this point where they thought they had to say something in response to EVERYTHING I say, negotiate something different from whatever I want and in general just be contrary. It's EXHAUSTING! You think you have issues now. I always wonder if I set myself up for this behavior at times when I just wanted to avoid struggles so I did negotiate with them or switch up gears all together to avoid conflict.
Anyway, enjoy the ride. I think your little one is at the most uncomplicated time of his life and it will CHANGE!
Suzi