added roles and cancan