learning angularjs controllers, scopes, templates, directives