I suggest you partition first as johnhudson says.
First make an extended partition of the whole disk, then make a logical swap partition as suggested in the extended partition. Now make one partition for each OS, each one about 10 - 15 GB, and I would keep /home within the root partition, not separate. Finally make another partition, as large as possible, and use that for all the data files, ie, your personal docs, photos, music, etc etc and then you can set it to mount at boot and link the files in there to the various folders in your several home folders.
This is how I have done it on my second hard disk which has four different Linux OSs on it, all in separate root partitions with home in root, and in my case, all linked to the data files in my first hard disk OS's separate /home partition. It works with no difficulty of any sort and use of all five OSs is seamless as far as using the files is concerned.
PS: It may be necessary to have the same username and GUID in all OSs for this linking of data files to work if your data partition is ext4, like mine, and therefore has linux permissions enabled, but perhaps not if it is fat32 or ntfs. I have no need for ntfs or fat32 any more being entirely linux.
Xubuntu 12.04 user, and loving it!