feat(binding): add disable list to hook manager
feat(binding): catch exceptions for hook initialization
feat(binding): split hooks to individual classes, make a hook manager