My daughter will be 3 next week. She goes to daycare everyday so I can work so we have a limited amount of time in the morning to get everything done(get dressed, eat, brush teeth, etc.). She is also capable of doing these things and she insists on doing them herself as well! However, it is always on her time schedule! :) Here's what I've just started doing: She picks out her outfit the night before and we lay it all out. In the morning, she has a sticker chart and gets a sticker for each task she completes(get dressed, brush teeth, etc.). Now, she obviously has to complete each task or else I'm not letting her out the door, but my goal (we just started this week) is that she will only get a sticker if she completes the task when I ask her to without whining or crying. Ultimately, I am hoping it will become second nature(almost) and just part of her routine where she doesn't really have to think about it. We'll see......So, in short, maybe some kind of sticker chart. Oh by the way, at the end of the week(5 days) if she gets all her stickers(there was no whining, etc.) she gets to pick out a prize from the prize box. Good Luck!
PS I was just reading the other responses....I do agree that they really shouldn't be rewarded for something that they should be doing, but at this age, in my opinion, small rewards to get them started doing these "behaviors" is perfectly fine.