Complete project management capabilities, with task statuses, priority, and assignees. Users should be able to create their own tasks as well, which managers can approve or reject. Users should be able to add/edit task description. Users should be able to associate Clients with Projects, so revenue and cost reports are calculated accurately.