Client Agent: Update example config with an example loginmanager
docs: Update internal protocol with draft for CA protocol.
docs: Update CA protocol documentation with message type numbers.
docs: First-draft specification for client<->CA protocol.
docs: Complete the client messages section in the client protocol.
docs: Add a section to client_protocol.md to list out various disconnect reason codes.
ClientAgent: Create the ClientAgent class.
tests: Add DC hash to testdc.py.
tests: Add client and clientagent msgtype declarations to common/CONSTANTS.
tests: Add ClientConnection type to common.
tests: Create clientagent unittest file, with test for CLIENT_HELLO behavior.
tests: Update test.dc with some dclasses suitable for testing CA behavior.
docs: Change example config to reflect more sane uberdog specification syntax.
tests: Add uberdog declarations to clientagent test config.
docs: Add new client disconnect reasons for trying to update an unknown object and violating the anonymous sandbox.
tests: Add Client Agent test for anonymous UberDOGs.
ClientAgent: Style conformance
ClientAgent: Client Agent now listens and creates an instance of the Client class for every connection
Merge master into clientagent. Conflicts: testdc.py
Tests: Fixes DC hash