I had a series of books called "Help Me Be Good" which was illustrated and written so that a youngster could understand. They came with whining, lying, disobeying, sharing, and a few more. I got them on some mail order thing. PM me if you want and I will get the details. You can find them at the library as well. Davis Library has them in the children's section.
My dd is 13 now and I got those books when she was around 2.
We also used to sing a song everytime she would whine....."Wendy Whiner go away come again another day". She HATED that. We continued it every time she would whine and it did not take too long of being consistant with it until I just called her Wendy and she stopped.
I did the same thing when whe was bossy. "Bossy Betty go away, come again another day".
It was a "code" in our house and to this day she responds if we say Wendy or Betty.
Good Luck..they grow up too fast!