Changed INotificationWaiter to have more intuitive structure