Separate scheduler from registry

Part one of several changes.

This does not change any behavior, but I did change scheduler's arguments in anticipation of my next PRs. There's now a clear dependency from registry to scheduler, and a nice scheduler test framework.