It is very normal. I agree with the discipline avenue as well as facilitating the happy, good times. I think both are extremely important. I learned that "No" was a word to be used in dangerous situations (health and safety only - crossing the street, getting into chemicals, climbing on the stove, etc, etc - true safety concerns ONLY) - not just when they are doing something we'd rather they didn't
My dgtr was extremely independent at that age also - climbing into her highchair by herself, not allowing us to help feed her anymore, climbing stairs, etc, etc. I found the more I backed off - the better she was. AND - the more she listened when it was important. I let her be as independent as she could be if it wasn't a true safety concern and was merely there to make sure if she slipped she wouldn't fall and crack her head open. She appreciated it because she was allowed more freedom and she really shined. Now, she is 3 and she'll say - "mommy, I want to do this by myself". And, when she can't - she'll tell me - "ok, I need help now."
I honed in on the part you wrote where he gets angry when being reprimanded or taken away from an activity (of course there could be a million things leading up to those events, but...) If he is doing something he shouldn't - redirect him to do what you want - maybe he's throwing a ball against the TV- you show him how funny it is when his favorite bunny rides around on his fire truck - get his attention away from the ball without bringing attention to it. Obviously there are times where this won't work and if you have tried redirection a couple times and it's not working - say, "We don't throw the ball in the house, (at the TV - whatever). Let's play chase instead - I'm gonna get you!!!" If he insists on throwing the ball (he likely won't if you have engaged him in something else) then use time out - but make sure you prep it - if you do that again, you will sit in time out (after his minute and a half, make sure he apologizes and gives kisses and hugs).
If it is when you 'take him away from an activity" - make sure you transition him. "Ok sweetie - in 2 minutes, we're going to put that away and go do ________" "In 1 minute, we're going to put that away and go do ________", "OK - in 10 seconds, remember, we're going to.........", "OK - it's time for us to put that away (while you are helping him move away from the activity) and do ______" I did this with my dgtr- it works, and I worked with children for years - this works. It helps them know what is coming next and plan for it. If he just gets taken away from something and doesn't know why - he will likely get upset each time.
The other thing is to make sure you have a general routine in the house and stick to it for the most part each day. It helps them plan their days out also. Good luck - it is definitely normal - but help make it as positive as you can.