Instead of passing win, use pygame.display.get_surface() , to get the screen, and you can get the dimensions from the Surface().
I can't tell the solution without seeing more. However , take a look at this Game() class. http://python.pastebin.com/CV4grHzJ It saves a reference to screen, and saves dimensions. Game() class can contain SpriteGroup() to store your objects, and use collision functions. Check out: http://www.pygame.org/docs/tut/SpriteIntro.html -- Jake