UI and API update for role overrides to allow editing name

also a bit of refactoring

test plan:
* test the role_overrides update API endpoint and confirm
 that a custom role's name is able to be updated
 (using the "label"  parameter)
* test the permissions UI, confirming that you can edit
 the name of a custom role and all things behave as before

closes #CNVS-14159

Change-Id: Ib6d5b08b96293d7b660a047bce4e2342f6d52e65
Reviewed-on: https://gerrit.instructure.com/43936
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
QA-Review: Jahnavi Yetukuri <jyetukuri@instructure.com>
Product-Review: Cosme Salazar <cosme@instructure.com>