There are a couple of things that you can do to help clean up or organize your profile:
1.) Prevent any user from publishing while another user is making changes. This ensures that you do no have 1 user overwriting the work of another current user.
2.) Leverage labels. This will help to prevent certain users from editing a tag that is not in their "group"
3.) Keep all three of your environments completely separate. This means that you would do all intitial staging working in the "dev" profile. Then, once everything is ready and validated by some overseeing user, you would move them into the QA environment. After that point, all changes are pushed to PROD. The easiest way to do this would be to keep a detailed list internally of what items are being worked on and nobody pushes up to a higher environment until all other parties are ready.
4.) Only allow certain users the ability to publish to certain environments (i.e. you have 3-4 'super' users that validate all changes before pushing to prod, etc.)
5.) Utilize libraries. This would allow you to have one profile that inherits changes from different libraries where certain teams can do their work. You could have an "analytics" library, a "marketing" library... etc.
These are just a few ideas that you can bounce around internally, but they have worked for other clients in the past.
What we have found useful is to leverage Tealium's version control. When we have multiple vendors working on the same profile we will require them to manage their own seperate 'branch'. Their branch is typically a build off of the currently published production version of the profile. From their they can coordinate who is currently publishing their profile to a given environment at a particular point in time (leveraging custom environments and the profile swicther where applicable). Finally, once changes are finalized and ready to be moved to production they can be merged in with the other branches once they are published to production. Some information on version control is here:
I hope this helps