Basically can this be done.
Talk to NPC. He can start 1 of 10 quests at random. Only 1 quest can run at a time, so the player can't have all 10 on the go at once. When that quest is finished, he can start another of the 10 randomly. Repeat etc.
When all 10 are completed, they can be done again all randomly so not in the same order as before. And again only 1 at a time.
Is this even possible? I was thinking perhaps have a start quest script attached to 10 dialogue responses which are set to random. This would work I think but wouldn't stop the player then talking to the npc and starting another quest, then another...