Source formatting
SImplify hooks setup plugins logic
Hooks are not fired when invoked from other asynchronous hook - Fix #199