Originally this was for the clients. But this also works for people who want to enable a hook global, without associating this with a request. So how about 'global_hooks'.

Each callback will have its own unique this state per tool. This is stored in this object. So do we want 'global_hooks' or 'global_hooks_ctx'?