b/11435875. Add support for fileAs when uploading new contacts.

When a new contact is created on the device, we do not push a fileAs up to Exchange
and that causes problems when you view the contact via OWA to check the results.
The challenge is to not push a fileAs if one was already created (i.e. the contact
was created on the server). We handle this by actually syncing the fileAs from the
server and being smart enough not to overwrite if it exists on the upload. Generation
of the fileAs string is done in 1 of 2 methods.  The first is to use the alternative
display name stored in the RawContacts information for this contact.  The fallback
method is to generate a fileAs string using a combination of structured name fields
and available email addresses.  Unit tests are included.

Change-Id: I957071da758801d2e5c2799fc1f0b4fdbe0b4e4d
3 files changed