Perfectly normal stuff. It's so easy to get into a battle with a 2 year old, because I swear, they enter battle mode, i.e. testing mode, and there seems to be nothing you can do. I find, however, that the more I try to show whose the boss, the more we fight, as it just creates power struggles. So, instead, I just try to keep my cool and follow an elaborate set of rules I have that govern everything. When problems arise, I create new rules. She seems to understand that there are just "ways of doing things," and she accepts the rules over my word any day ;-) So instead of saying "no," I tell her a rule and a reason. For instance," no you can't have gold fish for breakfast. We need to eat healthy foods to start our day so we have energy to play. How about some cheerios while I make eggs?"
Some of my rules directly related to her fighting behavior:
1. no whining: Ask politely in a normal voice or you will be ignored.
2. stomping feet? throwing a tantrum? Go to your room until you are able and willing to use your words.
3. Not listening and testing: TO chair.
4. Not cooperating while out in public/park: we leave
Prevention rules:
1. 5 minute count down before leaving or changing an activity to prevent fighting
2. Must ask before taking food. Not allowed in frig or pantry.
However, I find the key to getting them to listen is listening to them! So, I get my daughter to calm down and use her normal voice, and then we negotiate and/or I tell her why she can't have what she wants. I find "Trade-offs' work well. "Mommy is sorry she needs to cook this baby food, when I am done, let's go to the park. I know you are bored and want to go outside, just give me a few more minutes and then we can play till lunch."
And Laurie is right: food and snacks at the grocery store, and giving them jobs, work great. The more you can make him your little helper, the better. Have him set the table at dinner time, and bring his own drinks and things to the table. My daughter brings everything to the table for breakfast, it's great, and she is so proud of herself. At the grocery store, she holds my keys and grocery list, when she isn't munching on cheese or deli meats. I always hit the deli first, getting her something to munch on --she loves it.
You mentioned food. The rules in our house are simple: you sit politely at the table. If you play, you must be done. If you get up (to do anything but go to the bathroom), you must be done. She also has only ever been given what we eat, so there is never any question about "what" she will be eating. If she doesn't like something, I tell her to "push it to the side
and leave it alone."
You asked about where to start? I'd start by disengaging. When he starts up, just walk away. Don't lock horns with him, that just makes it worse! One of my favorite phrases with my daughter (when she won't put on her undies, etc.) is "let me know when you are ready and want mommy's help." That always gets her moving fast! The last thing they want is for you to leave the room, so leave the room and just say, " let me know when you are calm enough to use your words and talk to me." Then leave!