Broke out AvailableHashManager into its own class