Excellent ideas
>connect a message back to the parent message - if it was a response
Assuming you've got a long list of timestamped messages, how do you identify which messages are continuations of old threads and which ones are starting a new conversation?