Wrt to #1, just look at my pull. You can't assume parts tested in isolation are used correctly (or at all) in other methods.

#2 - As a consumer of this service (a developer that needs to send emails), that result seems very odd. I'd expect to be alerted in the event of any failure so I can handle say failure properly. Even if 99% of my emails fail, as long as 1 goes through, I am told that the sending of email was successful; im not sure anyone would consider a 99% failure rate a success!

Im not sure what the best response is (possibly a list of failed recipients? or empty/null for success) .. true/false just doesnt seem to give an accurate picture.