Invert logic in order to reduce the indentation levels.
The first callback argument must be reserved for errors.
Fixes the example accordingly to the previous commit.
Fixes bug where the callback was called instead of tested in a condition.
The first argument for the register callback should be reserved for the errors.
Fixes the example accordingly to the previous commit.
The unregister function for the extensions is async, then it fixes #1.
Fixes the example accordingly to the previous commit.
Split the register function for the readability.
Update README accordingly to the example.
Update README.