More documentation
Merged changes in protocol.py