Docs: Fix mix typos/mistakes in protocol text.

Fixed:
 - Changing owner should say it sends a changing owner message.
 - Session objects must be visible or owned, and can't be declared.
Tests: Add ClientAgent unittest for adding/removing session objects.
ClientAgent: Implement adding/removing session objects.