feat(binding): split hooks to individual classes, make a hook manager
chore: update dependencies
feat: add initial migrated files from NosSmooth repository