1. Refactor the object model a bit based on the latest object hierarchy.
2. Break ConversationItem into Payload and ConversationItem, in order to allow some code sharing for things that don't need nonce and timestamp information.
3. Break out messages into its own table. Create a new Payload table for data that needs to be sent to the server.
4. Add timezone info to ConversationItem.