Throw erros if not correctly initialized
Wrapping callbacks and handling errors