added custom directives, and added a new module