Roles updates

Roles, now with looser regex matching, code reuse.
It doesn't currently block duplicates. Do we care if duplicate roles or people show up?