> we can also use a mix of both solutions. Having some standard values defined
> in the protocol like:
> >> base 0
> >> identify 1
> >> auth 2
> >> main 4
> >> operator 8
> and allow both "auth|identify" or "2|1" or "3". This allows non standard
> extension to be coded like "myextension|3" (more compact than
> "myextension|identify|auth" but still understandable by clients not
> supporting the extension).
While that admittedly is an idea, I really don't think that it's
necessary. Most ordinary context changes like that will usually happen
through implied context changes on certain replies, and therefore
don't requre any bandwidth at all, anyway.