move AM to storing servers by role, API extended to list servers by role->uuid and retrieve a node instance by UUID. Everything is still master & worker only, but master state is driven by app startup callbacks, and client-side probes all convert responses back into the existing values