Adding a generic topological sort for the update pipeline.

This doesn't sound like a bounded set of possible values so enum might not be appropriate. How about a noop SideCar - CurrentValues?