Hiding from the library would help, but I still believe storing project files in their own location is ideal. Other plugins do this, Next-Gen gallery is a good example. That would also enable easy archiving of projects.
I could see it useful to be able to assign project management levels to different users on a per project basis.
Example: If I had a user that had a role of subscriber in WordPress (so they can’t muck with my WP install) but I wanted them to be able to admin/manage a specific project, this would be useful.
Maybe once a user is added to a project they could have a default low level permissions assigned with an option to upgrade their level within that project by the project creator.
Roles/Permissions
Level | Name | Permissions
Level-4 Admin – lower levels plus edit/delete/archive project
Level-3 Project Manager – lower levels plus can edit/delete others posts/files tasks. etc.
Level-2 Project Member – lower levels plus can view, post, upload attachments
Level-1 Project Subscriber – Upload restrictions, notify(email) other users restrictions, can’t create tasks/milestones, messaging restrictions ?…
I don’t have a current need for these roles, but it would be a good addition making the plugin much more powerful and flexible.
The front end editor would tie in nicely with roles also. Many people included on a project likely could care less about the backend and just come to a site to manage their respective project.