cleaned up error reporting through callbacks