How would you design a scalable notification system that supports email, SMS, and push notifications?