Had the same horrible battery draining experience with my Sprint Nexus S. Received the 4.0.4 roll out from Sprint a few days ago. I noticed the Android OS was consistently at the top of the battery app. Did a little research, and found that disabling and clearing the data associated with Google+ can help. After a few hours today, the Screen has been a few percent better than the OS. What's funny is my Wife has the same phone, and hers is just fine. I think the factory reset will be in my near future.
Sorry for the noob question here, but when you do a factory reset, does it mess up your carrier settings or anything? I don't want to be stranded without the phone or something...