Yeah, I'll believe that it would be nice to have that ability to reason. Right now, though, this means having to rewrite the entire upgrading flow into something that resembles callbacks (search for occurrences of the `Einhorn::Command::reload` method call). This involves a bit too much surgery for my tastes today. /:

Check out the way everything is currently factored, I think this might be at the right set of tradeoffs.