If you want to delegate the access rights management to your users, they would need to have access to the /hgadmin
repository and they should be able to modify the /hgadmin/access.conf
file where the fine grained access control is located.
To my knowledge there is no way (yet) to use Mercurial-server to have silos of access-control, where a user could grant access to his/her own repository but not to other's repositories. However you should be able to develop such an extension to the system: with a hook that would extract relevant rights from, e.g., <user-repo>/admin/access.conf
and copy them in a zone where another hook or a cron would select only lines concerning the <user-repo>
zone (with a sed or perl or whatever you'd like), then update the real access.conf
file, and finally commit and push it.
Hope it'll help.