<p>Many websites have the concept of sending messages from user to user.  When you send a message to another user, the message would show up in their inbox.  You could respond to the message, and it would show up as a new entry in that message thread.  </p>

<p>You should be able to see if you've read a given message already, and messages that have got a new response should be able to be at the top.</p>

<p>How would you design the classes (or tables or whatever) to support such a system?</p>

```
```
user
 id
 name

messages
 id
 to_user_id
 from_user_id
 title
 date

message_post
 id
 message_id
 user_id
 message
 date
```
```
classes would reflect this sort of schema