Improve Threading Behavior When Moving Messages

Based on some bug reports I’m finding, and behaviors I’m observing myself, we need to rethink how Mailspring handles message threads. It becomes difficult to move and work with individual messages that are part of a thread. This manifests in a wide variety of unexpected and buggy behaviors.

I believe all the issues below would be resolved with an improved threading system.