Minor enhancements from justin

I'd like to get some feedback if these changes are helpful.

In particular, I wanted to have the ThreadStore listen for new messages created, and then pull the last message from the MessageStore. However, due to some circular dependency issue, I could not get that work. The code that doesn't work is commented out in ThreadStore.

I'd also like to know if having the MessageStore send a message to update the ThreadStore directly is acceptable. Clearly, the MessageStore is dependent on the ThreadStore. I'm guessing that having this dependency only go in one direction was critical.
Thanks for this clean up.  Good catch.