If you are having trouble with weights, a couple of suggestions depending on your models' surface
If its a subd, create a wrap deformer from the base mesh and weight that only, you can also create corrective blend shapes for it too in those tricky areas around the shoulders.
If its a poly mesh again use the lowest res you have and use the poly smooth option but just bind the proxy/lo res and again adjust the weights, and if necessary create some corrective blend shapes. I found influence objects a little tricky so used the method above as I use subd. For a want of better explanations go to www.optidigit.com
, home of the legendary Steven Stahlberg, who is an influence for me and my work, check out his tutes section it will point you in the right direction