add messages controllers; update messages directive and template