I can say that it isn't easily over come. My 4 1/2 year old is getting better, but started doing the same thing when he turned 4. I started telling him that I will not say things more than 2 times - if I have to say something a third time he would be sent to his room. So, if I told him to get his pajamas on once I would just tell him, "go get your pajamas on." If I had to say it again I would tell him, "go get your pajamas on - this is the second time I have told you." If I had to say it a third time, I would tell him, "this is the thrid time I have said to go get your pajamas on - now you can go to your room and put them on." I only use the pajama thing as an example. I used it for everything - picking up toys, doing any task, etc. He was in his room quite a bit the first few weeks, but now he is doing better. It seems he is paying a little more attention when someone talks.
Good luck - you are going to need it! :-)