My contacts are a mess. Phone numbers scattered across Google Contacts, iCloud, some just stored on my phone. And don't get me started on email addresses. I generally just rely on Gmail to autocomplete the email addresses that I've used before...
Show me nirvana, hacker news.
* Have their contact info auto-imported if I add them as a friend in SOME WAY: either by emailing them, tweeting them, messaging them, whatever.
* Have all my contacts synced into one centralized data store (Google Contacts, in my case).
* Merge and remove duplicate contacts so I don't have to deal with 50 entries of people...
What I ended up settling on is really working well for the past year or so.
I use Google contacts as my primary datastore. I then use FullContact (free): https://www.fullcontact.com/
FullContact will hook into everything, eg: Google / Twitter / Facebook / LinkedIn / etc., grab EVERYONE'S contact info, and merge it into one record, then merge that back into Google contacts =)
Would highly recommend it.