optimize user ability group lookup
restructor user abilties
Merge branch 'user_permissions' into develop