Can Samba and other Free Software tools do this?

view story

http://www.linuxquestions.org – Basically I want to have a Linux server "control" a number of Windows workstations. The workstations are a mixture of XP Pro, 7 Pro, and 7 Home Premium (the latter won't join a domain so can't have all the features I want mind). I want: Centralised username and password database. Easy to add users. Roaming user profiles, so users can switch computers and take their settings with them. If possible, settings for selected programs shared between XP and 7. (They need separate profiles.) My Documents on a network file server (HowTos)