Extract Input Settings preference header string.

Fixes #1159

FREEBIE
Merge pull request #1178 from backspace/extract-input-settings-string

Extract Input Settings preference header string.
Fixed a few localization names.
Minor ConversationList scrolling optimization.
Added the dependency "Android SDK Build-tools".
//FREEBIE
Remove commas in names in recipient list string

Fixes #1225
fix NPE in isPushDestination
// FREEBIE
one more try at that one..
// FREEBIE
Remove separators from names in recipient list

Fixes #1225 and #1174
scroll to the new message in conversation
// FREEBIE
Fix #641 by using standard intent to select group avatar.

The ACTION_GET_CONTENT used with cropping is not supported on all devices.
To make this work more reliably I removed the cropping and MediaStore.EXTRA_OUTPUT.
The image is now read via getContentResolver().openInputStream() which should work on all device including KitKat/CM11.
Merge pull request #946 from DorianScholz/groupavatar

Use standard intent to select group avatar.
hide screen security when unsupported
// FREEBIE
Add APN for Aio wireless (USA).

Source: http://www.aiowireless.com/support/Apps-and-Services/Bring-Your-Own-Device-BYOD/customer/Bring-Your-Own-Android.html
Merge pull request #1249 from mcginty/convo-scroll

scroll to the new message in conversation
Merge pull request #1228 from backspace/support-commas-in-contact-names

Remove commas in names in recipient list string
refactor and improve contact selection

* unify single and multi contact selection activities
* follow android listview design recommendations more closely
* add contact photos to selection
* change indicator for push to be more obvious
* cache circle-cropped bitmaps
* dedupe numbers when contact has multiple of same phone number

// FREEBIE
Changed MMS Proxy setting for 24201 (Telenor)

Going forward, Telenor will be using FQDN.
Merge pull request #1281 from thoughtbox/patch-6

Changed MMS Proxy setting for 24201 (Telenor)
Handle simultaneous initiate protocol case.

1) Modify SessionRecord to store a list of "previous" sessions
   in addition to the current active session.  Previous sessions
   can be used for receiving messages, but not for sending
   messages.

2) When a possible "simultaneous initiate" is detected, push the
   current session onto the "previous session" stack instead of
   clearing it and starting over.

3) Additionally, mark the new session created on a received
   possible "simultaneous initiate" as stale for sending.  The
   next outgoing message would trigger a full prekey refresh.

4) Work to do: outgoing messages on the SMS transport should
   probably not use the existing session if it's marked stale
   for sending.  These messages need to fail and notify the user,
   similar to how we'll handle SMS fallback to push users before
   a prekey session is created.