Al,
There is a project-manager package in OpenACS that may cover quite a few or all of your requirements. I haven't used it personally but here is a link to a page describing the effort
https://openacs.org/projects/dotwrk/project_management/
There is also a dotlrn portlet to integrate project manager data into a dotlrn portal.