Added helper method to get non null values to be updated for contact
Folded back into PhoneReader

There was duplication of lookups for information that was already part
of PhoneReader so it made more sense to just keep it there
No longer needed PhoneRecord import
Skeleton for updating contact

updateDatabase gets contact id and updates as appropriate
Added search by phone and email

TODO: Update Custom Fields
TODO: createNewContact
Helper class to store key => value mappings for use in an array list

HashMap doesn't guarantee Iterator order, in theory order should be the
same as long as Map doesn't change but read values into an ArrayList
to be safe.
Added method to get customValues as an Arraylist
Added lookup for custom table type to name map
Implemented updateCustomFields

TODO: createNewContact & add the message to message table
Minor skeleton (work interrupted)