To my mind, it would be nice if we could prioritise some songs over others in a playlist. In other words, a song marked as a "high-priority song" would have more chances to be played next than a song marked as a "low-priority song" - of course in shuffle mode!
For example, playlist A has 10 songs. Each of them has 10% chance of being the first song played. However, if a song was a "high-priority song", it would have more than 10% chance. This way, the more someone likes a song , the more he listens to it!