Implement a roster and typing notifications.

Fixes #9 and #7