I'd much rather my contacts be able to set their own photos for when they call (with the option to override it). It's just not worth the trouble setting photos for each person.
That's exactly how it works on Android. It uses Google+ profile pictures, which you can override, you can also enable option to show details about numbers that are not in your contacts (including the picture).
I would rather avoid a social network getting their hands on my contacts, though. You could sync facebook and twitter with your contacts in iOS, but I just don't feel comfortable doing it.
The thing is I have absolutely no interest in join a bloody social network just to use my phone book, as a matter of fact I block every app on my phone from accessing the contacts info.