Как подгружать шаблоны в AngularJS?
Появление сообщений в чате реализировано через $compile. 
Зачем? Намного практичнее использовать старый добрый ngRepeat. Так можно потом виртуальные скролы прикрутить какие-нибудь и т.д. Разделение ответственности короче.
А то что вы описываете это jquery-стайл.
Для защиты от XSS просто используйте $sanitize.
Для удаления потенциально опасных конструкций из "голого" html используйте $sanitize.
А вот для чего для отображения сообщений вы используете $compile с inline-шаблоном, мне представить трудно.