Document protocol parsing

Add a prose tutorial for `ParserProtocol`, more docstrings, and some utility functions for composing senders and receivers.