change out key cached icon to be more unique

Fixes #651
// FREEBIE
Merge pull request #1495 from mcginty/icon-cached

change out key cached icon to be more unique
don't call replace() on null formattedNumber

Fixes #1397
// FREEBIE
sanely handle duplicate contacts in db

// FREEBIE
Change draw selector to background
Fix AlertDialog Background on Android 2.3
new passphrase prompt activity
// FREEBIE
Reactivate a group if a contact gets readded

Fixes #723 //FREEBIE

Removes the own number from group on leaving, to receive a proper
re-added message
Finish activity before restarting it

The current activity needs to be finished before calling startActivity.
Otherwise, activities with launchMode singleTask (ConversationListActivity)
will receive a new Intent instead of getting restarted. And in response
to the new Intent, they will run onResume once again and trigger a second restart.

Fixes #1292
Add some ideology to contributing.md

//FREEBIE
Expand ideology.

//FREEBIE
More ideology.

// FREEBIE
send email addresses as mms

// FREEBIE
Merge pull request #1550 from mcginty/email-send-fix

send email addresses as mms
Validate recipients at send time rather than when constructed.

Fixes #665
Support for multiple APN settings on the same provider
Use dynamic PBE iteration count.

Fixes #184
Fixes #247
Add sorting by default phone number

Currently the order of numbers is times contacted -> displayName ->
phone type (mobile vs. home, etc.). This adds whether the number has
been saved as the default number for a contact to sort numbers belonging
to the same contact.

Fixes #580
Fixed capitalization inconsistensies with Android guidelines.

Fixes #673
Do country code detection if we can't get the full number off SIM.