Angular component that provides namespaces messaging between directives/controllers without needing to be in the same DOM tree