Doesn't feel hugely odd to me to make depsolver an active app. Would allow us to build in other interesting optimizations like caching in the future.