For our current work we have modified the request processor and subsite procs to allow multiple packages to be treated as subsites. This code has been used on a half dozen sites for more that a year and seems to work quite well. It has only very limited performance implications and additional subsite packages are easy to write (and we can provide 2 examples).
Why do this?
We needed to provide a user friendly admin screen and limit the operations a subsite admin could carry out as well remove some of the other acs-subsite functionality. Having other packages stand in as acs-subsite packages made this quite easy. For the parts of acs subsite we did use we provided a one line .vuh file like this (for user/...) in this example):
rp_internal_redirect "/packages/acs-subsite/www/user[ad_conn path_info]"
We also had to match the set of parameters a subsite is expected to have.
Why it's good
It allows for much more limited url space in the subsite and control over what is there. It also is a way out from the unfortunate monolithicness of the current acs-subsite package. The code is done tested and works well.
Why it's bad
No bad things other than it's ever more complication piled in to the rp.
I can provide the patch to anyone who is interested in what has to change