Using content-based addresses as a programming construct for scenario specific routing and multicasting