Presumably, the C type MsgType was meant to hold the protocol message
type in the pre-version-3 era, but this was never fully developed even
then, and the name is pretty confusing nowadays. It has only one
vestigial use for cancel requests that we can get rid of. Since a
cancel request is indicated by a special protocol version number, we can
use the ProtocolVersion type, which MsgType was based on. (If this is
also found confusing, we could also use uint32 directly.)