Small fixes from comments on #51
Addded a CallbackBuilder factory to make it overridable by DI