More control needed when working with User Roles fields

We need a way of amending a User Role other than giving administrators the Insert/Amend Roles option which is rather dangerous and cumbersome, in my case we have some 15 different roles and circa 2,000 login users.

As an example I need to add a role (not replace all roles) either by using a Task and/or by using Form Rules, you currently allow this with Multiple Choice fields and it works great.

Also it would be very handy to be able to hide roles from an update field so an administrator was offered only pre selected roles to allocate.

Thanks: John