the notification engine will need a scripting language and a vm