WIP#259: Hash reply-to emails

- Added byebug gem for debugging.
- Refactored the mailbox method to be called mailbox_email as it returns an email address type object.
- Added migration to create the conversation mailboxes table for storing the SHA value to identify a conversation securely.
- Added conversation mailbox model. Added method that returns the address for the mailbox. Explicitly set the primary key as it is required for custom primary_keys. Added conversation relationship so that you can access the conversation once you find the mailbox.
- Added conversation_mailbox relationship and after create that generates a conversation_mailbox for the conversation. Changed the mailbox_email method to use the new interface for fetching the address object for the mailbox from the conversation_mailbox also did the same for match_mailbox, was careful to make sure it adheres to the rule of returning a conversation or nil.
- Removed bye bug it seemed to cause issues with vagrant.
- Added account to conversation mailbox as the account was needed for the mail gun web hook.
- Changed create_mailbox to include the account when creating the conversation mailbox.
- Fix for enqueue_to_update_search_index randomly failing. It was failing due to the fact that after save does not imply that the record has been persisted in the database and the job was expecting the message to be persisted so after_commit made more sense in this case.
- Changed the interface so that it handles the old way of parsing the recipient email and the new more secure way.
- Added fix me message to remove the old way of parsing emails.