added ability to actually specify user, some more roles, basic path logic