Nessa - we've got the same thing over here too. DD has been doing this for about 2 years, and I think we might be slowly starting to win the war. (I hope!) She turned 4 in August. I don't have a wonderful solution for you, just an encouragement to stay firm and consistant, and trust that you WILL come out the other side of this! I also try hard to "catch" my daughter being good, and praising and encouraging that behaviour. (ie. "great sharing, honey!" "I'm so glad you listened to me without fussing!" or "that was such a kind thing to do - what a big girl you are!")
One tip I would pass along - when she throws a tantrum or starts crying about nothing, I usually say "This is not something we need to cry about. If you are going to cry, please go to your room, and cry there." That way, she is not getting my attention for that behaviour, and she's not making me absolutely crazy by screaming in the middle of the floor.
I know what you mean about feeling like a bad mother too - I wonder sometimes if DD will have happy memories of her childhood. Sometimes it seems like all I do is discipline her! I am trying to make time for doing things with her too, and actually that helps a little. She seems to want extra attention these days. (and that's not always possible, nor do I want her to think that the world revolves around her.) For a while, she was having potty accidents daily, and we found that really improved when DH paid some extra attention to her when he came home from work, or on Saturdays.
Oh, and my DD is also quite bright. She taught herself to read about a month ago, using an online program called Starfall. She absolutely loves that. If your DD is bored, maybe let her try that. (google it, and you should find it.)
Anyways, just a few thoughts, and I hope you are having a better day today! All the best!
Bookmarks