In UNIX (including Darwin), you can set an
Access Control List that, at least on the command line level, can be used to set permissions for specific users and groups of users. You can deny users and groups access to specific access to folders ("deny add_file,delete,add_subdirectory,delete_child,readattr,writeattr,readextattr,writeextattr,readsecurity,writesecurity,chown) and also give them access to the folder but prevent the folder from being visible ("deny list, search"). I've done this in OS X before but only verified that it works at the command line level.
You can use
TinkerTool System to set Access Control Lists.
Does anyone know if this would also work at the GUI level? I haven't verified that it would work, and to be honest, I'm a bit too lazy to at the moment to try it now.

But if it does, then this might be exactly what the OP needs.