Try DropBox (http://dropbox.com). This is not exactly what you have described but should be OK.
- First, let each of your users create an account. This way they will get their individual spaces of at least 2GB.
- Then, make them install DP's desktop application. This is not necessary but very helpful. All it does is synchronizing a designated folder with a user's online space.
It works like every regular folder. If you drag and drop a file into it, the app will start synchronizing it with the online space. If you rename it, move it or delete it - all the changes will be reflected online, too. It is just like a mix of instant online back-up and file sharing.
Now, if your users want to share some files, they can just sort them in folders in their DropBox folder and designate users with access to each folder separately. What is best about it, is that if user A allows user B access to a folder, this folder is being automatically synchronized with both users' desktops, which means that everybody is up to date with their files.
It works very well and at the same time is free and simple. The functionality is very limited in terms of available options but the implementation is flexible enough so that it is easy to have a setup that is fit for various tasks.