TextSecure messages don’t get assigned a timestamp by the server. All
of it is done end-to-end between both clients. A client could have a
misconfigured clock or might want to forge a timestamp. Therefore, we
address this issue by introducing a new receivedAt timestamp for
incoming messages that will be used to sort the messages.
1) Supporting `remoteRegistrationId` on sending messages. Now showing
warning before sending the message if key conflict exists. Fixes#574
2) Upgrading dependencies: adapting to new libPhoneNumber API.
3) Fixes race condition in database code.
4) Fixing ordering bug. Hopefully once and for good.