building out basic controller and directives