Once #1 is complete and the contract has role-based permissions, the UI should check those permissions once the user is authenticated and only present them with options that they can perform.
Specifically, minting should only be available to those with the MINTER_ROLE.
Dispersal is simply the bulk transfer from a treasurer to recipients and doesn't have any special permissions.
Also, some basic UI should be added to make it easy for those with the ADMIN_ROLE to add/remove MINTERs and METADATA_UPDATERs.