Added support for role definition and usage in the DSL. Thanks to @navinpeiris for his assistance.