move the hooks instance part to the hooks test
extract HookSet for common use
extract version to separate file
add InstanceHooks