Yeah my first thought was something like a modified block list data type that used the JSON or CSV of an Umbraco Tag property to populate itself.
But indeed, the extra bits of tags as you mention were the "needed bits"
I think I may have found a solution using Lee's Contentment package with a Custom Data list, using the tag group as a source, and then using the "Data picker" interface to select the order.
It definitely works, its not glamorous but it gets the job done