MQTT 5.0 Properties encoding and decoding.
Supports all 28 MQTT 5.0 property types.
Summary
Functions
Decode properties from binary.
Returns {:ok, properties_map, rest} or {:error, reason}.
Encode properties map to binary with length prefix.
Only encodes properties for MQTT 5.0. Returns empty varint (0) for other versions.