add a role constructor method and mark role constants as private