Message Threading in Public Folders

## Message Threading in Public Folders |

Outlook lets you view Exchange Public Folders in a "Conversation" mode similar to Evolution's "Threaded" mode. However, it doesn't do it via `In-Reply-To` or `References` headers. CamelExchangeFolder translates Exchange's system so that the messages thread properly in Evolution

A new post to a folder gets a 27-byte-long "thread index". (The value is apparently unique but has no meaning we know of.) Each reply to a new post gets a thread index that starts with the original post's thread index, followed by 5 additional bytes. (Thus, the reply to a new post would have a 32-byte-long thread index, and a reply to that post would have a 37-byte-long thread index, etc.)

The `Thread-Index` header contains a base64 representation of this value. CamelExchangeFolder keeps a hash table mapping from `Thread-Index` values to `Message-ID`s. When it finds a message with a `Thread-Index` but no `In-Reply-To` or `References`, it looks up the parent thread index (ie, all but the last 5 bytes) in the hash, and (assuming it finds it), fakes a `References` header pointing to it.