I see.  I guess I'm just getting hung up (again) on the fact that shutdown is implemented via a service.  It seems weird that we have to define a `defprotocol` here that will never be used. (I am understanding things right?  It seems like the functions will only be used directly, not via a service dependency.)