I am kinda of new to networking with multiple OS and what I am trying to do is create an easy way to set up my ubuntu laptop as a sort hub for my home network since it is on 24/7. I don't have anything special really, just one dell laptop with Windows 7, an xbox, my iphone, and the ubuntu laptop. I want to be able to share files easily so I can grab mainly music and movie files, maybe some pdf and other documents, on any device I have. If it would be possible. I have a feeling the iphone and xbox wouldn't work easily so I am mainly concerned about the two laptop. Also I would like to have a way for friends, one friend I have in mind has a Mac, to be able to access the network so we can trade files when needed.

Is any other this going to be possible?
What type of set up would be best for this?
Would another linux distro be better?
Should I look at using my router as a main host vs my ubuntu machine?

I know this is kind of a broad post but I have been searching around the internet but keep getting lost in the flood of available info. I thought I would start asking questions so any advise or points in the right direction are welcome.