Add messaging and user contracts
Latest changes

**contracts
**client
**server