//! Canonical binary encoding for consensus hashing and signing.
//!
//! Fixed-width integers are little-endian; variable-length byte strings are
//! u32-length-prefixed. This encoding is what gets hashed — the JSON used for
//! disk storage is non-consensus.