Handle multiple callbacks
Add initial support for chaining
Refactor call chaining