use callbacks and async module to execute notifications in series, instead of promises