Specifically, rebinding the command handler doesn't take effect until after
all input lines have been handled. This means handle_command_prereg doesn't
get new values when it ought to.
This is where I realized that there's no point in passing around a
"server" object, since it's entirely reasonable to expect one server
per running instance.