role addition fleshed out

--HG--
branch : noink