Changes to more readable directive and faster directive creation without need of modifing declarations