I want to create different environments on my mac, for example work 1, work 2, and at home. The environments have different icons in the doc, different desktop background images etc. Is that possible? I do not want to create different users, because some files are used in every environment.
There is an application Dockspaces that allows you to switch between different sets of applications in your dock (and I think different desktops but I don't use the desktop at all so I don't know if this does what you want)
In "Computer -> Users" there's a folder called "Shared Folders". You can put shared files for all users in there (including the iTunes library etc.). With fast user switching enabled it's very easy to handle multiple environments.
I've never had a change to try the app in Mark's answer, but it seems like it is a great solution to one of your requirements. These two might also help you get the setup you are looking for:
1. ControlPlane (http://www.controlplaneapp.com)
ControlPlane allows you to build configuration profiles, contexts in ControlPlane lingo, for your Mac based on where you are or what you are doing. ControlPlane determines where you are or what you are doing based on a number of available evidence sources and then automatically reconfigures your Mac based on your preferences.
2. Foreman (http://www.flyingmachinestudios.com/foreman)
You define app groups by dragging apps from the Finder into the space that says "Drag Apps Here To Create New Group". Click a group to hide all applications which aren't in that group; shift+click to close apps instead of hiding them. Foreman also opens all the apps in the group that aren't already open.