Angular Directive as a Service