I have a situation where I want to give a certain user the ability to administer a number of given users. That is, I, as master admin, create a user, say "Admin1", who can create and delete, say, 10 other users. As far as Admin1 is concerned the system only contains her and her 10 users. There may be many more "Admin"s on the system, but none of them can see each other or the other "Admin"'s users. The users themselves must know who their Admin is, and be able to contact her, but mustn't be able to see or in any way communicate with other users.
I'm working on a services kind of idea where a small number of Admins get to assign services, each to a small number of unrelated users. Once an Admin has created a user account, that user should be able to log in and use the services the Admin has allowed. At any time the Admin should be able to change the services offered to any user or delete the user account completely. The Admins are unrelated to each other and shouldn't be able to allocate services they don't control.
I'm not sure how to go about creating this layout, nor what facilities already Drupal offers to help me. I think roles might be useful - maybe I could create a role for the 10 users in one group, and somehow link them to their one ClientAdmin user? If I ended up with 1000 ClientAdmins, each looking after 25 users, would the Drupal mechanism cope? Is there a better way?