hub_manager split into its own module.